要了解有关SQL / DDL -queries的情况下判决(To understand a sent

2019-10-17 03:22发布

这个问题是基于这样的回答 。

什么是下面这句话是什么意思?

最后,不要使用大小写混合的标识符。 尽一切小写,所以你不必说出来了。

这是否意味着我应该改变命令,例如CREATE TABLE,USER_ID和NOT NULL为小写? - 它不能因为这将是对常见的命名约定。

Answer 1:

不,我认为君子指使用全部小写标识,如表,列名等。 这应该对命令没有影响,如创建您使用表等。



Answer 2:

PostgreSQL ,一个不带引号标识符被转换为小写:

CREATE TABLE "MYTABLE" (id INT NOT NULL);

CREATE TABLE "mytable" (id INT NOT NULL);

INSERT
INTO    "MYTABLE"
VALUES  (1);

INSERT
INTO    "mytable"
VALUES  (2);

SELECT  *
FROM    mytable;

---
  2

SELECT  *
FROM    MYTABLE;

---
  2

这两个查询将返回2 ,因为它们对发出"mytable" ,而不是"MYTABLE"

要返回1 (即发出对查询"MYTABLE" ,而不是"mytable" ),你需要引用它:

SELECT  *
FROM    "MYTABLE";

---
  1

CREATE TABLE等不识别,他们是保留字。

你可以在你喜欢的任何情况下使用它们。



Answer 3:

我不知道为什么,他说。 在SQL Server中,至少一个标识的情况没有关系。 也许它在其他DBMS系统?



文章来源: To understand a sentence about the case in SQL/DDL -queries
标签: sql database ddl