即。以下声明是否相同?
CREATE TABLE example_table (
id INTEGER PRIMARY KEY,
name TEXT
)
和
create table example_table (
id integer primary key,
name text
)
我认为大写很难编辑,但我已经发现交互模式中的.schema
命令会记住这个案例。文档也总是使用大写版本。
答案 0 :(得分:2)
我使用此代码测试它,似乎名称不区分大小写:
CREATE TABLE table_sensitive (
id INTEGER PRIMARY KEY,
some_int INTEGER,
some_text TEXT
);
create table table_insensitive (
id integer primary key,
some_int integer,
some_text text
);
INSERT INTO table_sensitive ( id, some_int, some_text )
VALUES ( 'not an integer key', 'a value', 123 );
insert into table_insensitive ( id, some_int, some_text )
values ( 'not an integer key', 'a value', 123 );
INSERT INTO table_sensitive ( id, some_int, some_text )
VALUES ( 0, '123', 123 );
insert into table_insensitive ( id, some_int, some_text )
values ( 1, '123', 123 );
SELECT typeof(id), typeof(some_int), typeof(some_text) FROM table_sensitive;
select typeof(id), typeof(some_int), typeof(some_text) from table_insensitive;
结果是:
Error: near line 13: datatype mismatch
Error: near line 16: datatype mismatch
integer|integer|text
integer|integer|text
(使用非整数主键插入时出错,类型转换适用于包含两个版本整数的字符串。)
这意味着您几乎可以编写小写的关键字和类型,这就是我想知道的。