2012-07-26 74 views
4

我想給NOT_NULL約束添加到在SQL數據庫H2一列,用添加NOT_NULL約束的SQL列

ALTER TABLE CHARACTERS ADD CONSTRAINT nn_PID NOT_NULL (PLAYER_ID); 

在此之前,我發現here模式:

ALTER TABLE Persons ADD CONSTRAINT pk_PersonID PRIMARY KEY (P_Id,LastName) 

除了我更改約束,表和列的名稱。但我得到這個錯誤:

Syntax error in SQL statement "ALTER TABLE CHARACTERS ADD CONSTRAINT NN_PID NOT_NULL[*] (PLAYER_ID) "; expected "., COMMENT, PRIMARY, INDEX, KEY, CHECK, UNIQUE, FOREIGN"; SQL statement: ALTER TABLE CHARACTERS ADD CONSTRAINT nn_PID NOT_NULL (PLAYER_ID) [42001-168] 42001/42001 (Help)

如何添加NOT_NULL約束?

回答

11

H2 SQL Grammar

ALTER TABLE TEST ALTER COLUMN NAME SET NOT NULL; 

所以我們可以使用:

ALTER TABLE CHARACTERS ALTER PLAYER_ID SET NOT NULL; 
+0

只是一個問題:與H2語法根據...... ALTER TABLE TEST ALTER列名NULL; 也是有效的。它沒有任何作用。你知道爲什麼嗎? – rdllopes 2016-06-02 08:47:09