0

NOT NULL 制約を持ついくつかの属性を持つテーブルを作成してから、NOT NULL 制約を持たないフィールドにのみ値を指定して INSERT INTO 命令を試しましたが、命令は引き続き機能します。動作してエラーが発生するべきではありませんか?

CREATE TABLE ciao(
  Id INTEGER NOT NULL AUTO_INCREMENT PRIMARY KEY,
  Nome VARCHAR(30) NOT NULL,
  Cognome VARCHAR(30) NOT NULL,
  Nickname VARCHAR(30)
); 

INSERT INTO ciao(Nickname) VALUES ('prova'); 
4

1 に答える 1

0

指定しなかった列のデフォルト値として空の文字列を挿入しています。そのデフォルトは create ステートメントで指定されていないため、おそらく他の誰かによって作成されたものです。クリーンな DB で作成と挿入を実行すると、失敗します。

于 2014-05-20T16:22:12.533 に答える