15

Alter table を使用して、特定の列の後にデフォルト値が null ではない列をテーブルに追加する必要があります。

ALTER TABLE tblechecklistrevision ADD COLUMN IWorkFlowOrder INT(10) DEFAULT NOT NULL AFTER fState;

クエリを実行すると、以下のエラーが表示されます

SQL 構文にエラーがあります。1 行目の 'NOT NULL AFTER fState' 付近で使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。

4

2 に答える 2

16

削除する必要がありますDEFAULT:

ALTER TABLE tblechecklistrevision 
    ADD COLUMN IWorkFlowOrder INT(10) NOT NULL AFTER fState;

DEFAULT は、その列の値が指定されていない新しい行に初期値を設定するための...INT(10) NOT NULLものです。実際には、初期化時だけでなく、その列に NULL を含めることはできません。

于 2012-06-09T11:17:11.913 に答える
12

デフォルト値を等しくしたくない場合NULL(例 0)、次のようにします。

ALTER TABLE tblechecklistrevision 
    ADD COLUMN IWorkFlowOrder INT(10) NOT NULL DEFAULT 0 AFTER fState
于 2012-06-09T11:16:38.970 に答える