gpt4 book ai didi

sql - 在 SQL 标识符中使用特殊字符的优点和缺点是什么?

转载 作者:行者123 更新时间:2023-12-05 06:42:19 30 4
gpt4 key购买 nike

我应该避免在 SQL 表名和列名中使用特殊字符,例如“é á ç”吗?

使用特殊字符的优缺点是什么?

最佳答案

如您所料,这有利也有弊。这或多或少是一个主观问题。

SQL(与大多数编程语言不同)允许您在表或列标识符中使用特殊字符、空格、标点符号或保留字。

很高兴人们可以选择使用适合他们母语的字符。

特别是在用最接近的 ASCII 字符拼写时,单词的含义会发生显着变化的情况:例如añoano

但缺点是,如果这样做,每次引用带有特殊字符的表时都必须使用“定界标识符”。在标准 SQL 中,定界标识符使用双引号。

SELECT * FROM "SELECT"

其实还可以!如果你想使用 SQL 保留字作为表名,你可以这样做。但这可能会给代码的某些读者带来一些困惑。

同样,如果您使用特殊的非 ASCII 字符,可能会使讲英语的程序员难以维护代码,因为他们不熟悉键入这些特殊字符的键序列。或者他们可能会忘记他们必须分隔表名。

SELECT * FROM "año"

然后是非标准分隔标识符。 Microsoft 默认使用方括号:

SELECT * FROM [año]

MySQL 默认使用反引号:

SELECT * FROM `año`

虽然如果您启用某些选项,两者都可以使用标准双引号作为标识符分隔符,但您不能总是依赖它,如果该选项被禁用,您的代码将停止工作。不幸的是,Microsoft 和 MySQL 的用户在使用非标准定界符时有点受困。

如果您能坚持使用 ASCII 字符,那么在某些方面维护代码会更简单。但也有正当理由想要使用特殊字符。

关于sql - 在 SQL 标识符中使用特殊字符的优点和缺点是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37358409/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com