2017-07-25 955 views
0

我正尝试在数据库升级方法的预先存在的表中添加一个新列。我已经看到了两种方式:SQLite中ADD与ADD COLUMN的区别?

ALTER TABLE foo ADD new_column INTEGER DEFAULT 0

ALTER TABLE foo ADD COLUMN new_column INTEGER DEFAULT 0

有什么区别?

+4

的'COLUMN'关键字是可选的。根本没有区别。 –

+0

@ZoharPeled有兴趣看看你是如何知道的;我在https://sqlite.org/lang_altertable.html上看到了这个流程图,这是哪里? –

+1

我知道这一点,因为两个版本完全相同。尝试一下,看看。 –

回答

1

COLUMN关键字是可选的。根本没有区别。

尝试下面的脚本:

CREATE TABLE Test 
(
    Col1 INTEGER 
); 

INSERT INTO Test (Col1) VALUES (1); 

ALTER TABLE Test 
ADD Col2 INTEGER NULL; 

ALTER TABLE Test 
ADD COLUMN Col3 INTEGER NULL; 

SELECT * 
FROM Test 

结果将是:

Col1 Col2 Col3 
1 
相关问题