「not null」不是索引而是非空約束,用於指定字段的值不能為空;對於使用了非空約束的字段,如果添加資料時沒有指定值,則會報錯。設定非空約束的兩種方法:1、建表時設置,語法「CREATE TABLE 表名(字段名資料類型NOT NULL);」;2、修改表時設置,語法「ALTER TABLE 表名CHANGE COLUMN 字段名字段名資料型別NOT NULL;”。
本教學操作環境:windows7系統、mysql8版本、Dell G3電腦。
「not null」不是索引而是非空約束。
非空約束(NOT NULL)指向欄位的值不能為空。對於使用了非空約束的字段,如果使用者在新增資料時沒有指定值,資料庫系統就會報錯。可以透過 CREATE TABLE 或 ALTER TABLE 語句實現。在表中某個列的定義後面加上關鍵字 NOT NULL 作為限定詞,來約束該列的取值不能為空。
例如,在使用者資訊表中,如果不新增使用者名,那麼這條使用者資訊就是無效的,這時就可以為使用者名字段設定非空約束。
在建立表格時設定非空約束
#建立表格時可以使用NOT NULL 關鍵字設定非空約束,具體的語法格式如下:
CREATE TABLE 表名( 字段名 数据类型 NOT NULL );
範例:建立資料表tb_dept4,指定部門名稱不能為空
CREATE TABLE tb_dept4 ( id INT(11) PRIMARY KEY, name VARCHAR(22) NOT NULL, location VARCHAR(50) );
DESC tb_dept4;
######如果在建立表格時忘記了為欄位設定非空約束,也可以透過修改表進行非空約束的新增。 ######修改表時設定非空約束的語法格式如下:###
ALTER TABLE <表名 CHANGE COLUMN 字段名 字段名 数据类型 NOT NULL;
ALTER TABLE tb_dept4 CHANGE COLUMN location location VARCHAR(50) NOT NULL;
以上是mysql中not null是索引嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!