2013-06-13 106 views
1

如何在不知道表格的任何列並使用默認值的情況下創建當前行?在SQLite2中插入默認值

在sqlite3的,我只是做:

sqlite> CREATE TABLE t ("id" INTEGER PRIMARY KEY, "text" TEXT DEFAULT "hello world"); 
sqlite> INSERT INTO t DEFAULT VALUES; 
sqlite> SELECT * FROM t; 
1|hello world 

但sqlite2.8.17我得到:

sqlite> INSERT INTO t DEFAULT VALUES; 
SQL error near 'DEFAULT': Syntax error. 

有沒有辦法做到在sqlite2這個權利或者我需要給的值手動插入語句中?

+0

sqlite3的是現在9歲:

rowid當您指定NULL,所以你可以使用一個自動獲得的值。我只是想知道你爲什麼要今天使用sqlite2? – mvp

+0

我必須使用一個愚蠢的託管服務提供商,它支持PHP5但沒有sqlite3 ..... – gamag

回答

4

您必須指定至少一個值;所有其他人將獲得他們的默認值。

INSERT INTO t(id) VALUES(NULL); 
+0

不錯,謝謝。 – gamag