标签: style

在手写代码中使用 SQL Server 的括号表示法有意义吗?

当代码生成器使用新的 Microsoft 括号表示法 ( []) 为几乎所有内容生成输出时,它们往往更简单。

当我第一次看到它时,我虽然哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇哇当时有些禁止引用的标识符符号表示法被禁止引用的标识符符号的转世。

据我所知,它是 Microsoft 的专有扩展(意味着 Oracle 不支持它)。

查看 SQL Server,如果您定义一个表,则没有区别

CREATE TABLE [dbo].[Table_2] ([col1] [int], [col2] [int]);
Run Code Online (Sandbox Code Playgroud)

或者

CREATE TABLE dbo.Table_2 (col1 int, col2 int);
Run Code Online (Sandbox Code Playgroud)

这是个人或公司风格的问题。始终如一。

现在,如果您想将数据库迁移到 Oracle,括号是没有选择的。

您可以使用旧的带引号的标识符,但这些标识符区分大小写,这会导致很多麻烦。

从生成的代码中删除所有括号、避免使用空格、其他特殊字符和保留关键字作为名称,并且仅以大多数 DBMS 理解的方式进行编码是否是个好主意?

sql-server style t-sql

15
推荐指数
5
解决办法
1万
查看次数

这是 Oracle Where exists (Select NULL FROM...) 中的一种新的常见模式吗?

多年前,写

where exists (Select * from some_table where some_condition)
Run Code Online (Sandbox Code Playgroud)

去年我注意到许多 t-sql 脚本切换到使用数字 1 而不是星号

where exists (Select 1 from some_table where some_condition)
Run Code Online (Sandbox Code Playgroud)

就在所以我看到了这个 Oracle 示例

WHERE EXISTS (SELECT NULL FROM ...
Run Code Online (Sandbox Code Playgroud)

这是 Oracle 的常见模式吗?哪些是使用这样的东西的性能参数。

oracle sql-server style

8
推荐指数
2
解决办法
1117
查看次数

是否有其他站点禁止 SQL 开发人员使用 c 样式注释?

我个人的观点是,sql 开发者不应该使用 C 风格的注释。

C 风格注释的问题是,它们不嵌套。

C 样式注释是支持的救命稻草之一,当它们必须在存储过程中进行一些临时更正时,但只有当它们不必与现有的 C 注释抗争时,才能很好地工作。

style

5
推荐指数
1
解决办法
248
查看次数

标签 统计

style ×3

sql-server ×2

oracle ×1

t-sql ×1