將 MySQL 列更改為帶有 NOT NULL 約束


要更新約束,請使用 MODIFY 命令。以下是語法 −

alter table yourTableName modify yourExistingColumnName yourExistingDataType NOT NULL;  

讓我們先建立一個表 −

mysql> create table DemoTable
   -> (
   -> UserId int NOT NULL AUTO_INCREMENT,
   -> UserFirstName varchar(100),
   -> UserLastName varchar(100),
   -> UserEmailId varchar(100),
   -> UserPassword varchar(100),
   -> PRIMARY KEY(UserId)
   -> );
Query OK, 0 rows affected (0.91 sec)

以下是查詢,用於更改列的約束為 NOT NULL −

mysql> alter table DemoTable modify UserFirstName varchar(100) NOT NULL;
Query OK, 0 rows affected (2.13 sec)
Records: 0 Duplicates: 0 Warnings: 0

讓我們使用 desc 命令來檢查該行的約束是否為 NOT NULL −

mysql> desc DemoTable;

輸出

這將生成以下輸出。現在,UserFirstName 列有 NOT NULL 約束 −

+---------------+--------------+------+-----+---------+----------------+
| Field         | Type         | Null | Key | Default | Extra          |
+---------------+--------------+------+-----+---------+----------------+
| UserId        | int(11)      | NO   | PRI | NULL    | auto_increment |
| UserFirstName | varchar(100) | NO   |     | NULL    |                |
| UserLastName  | varchar(100) | YES  |     | NULL    |                |
| UserEmailId   | varchar(100) | YES  |     | NULL    |                |
| UserPassword  | varchar(100) | YES  |     | NULL    |                |
+---------------+--------------+------+-----+---------+----------------+
5 rows in set (0.17 sec)

更新於: 30-Jun-2020

596 次瀏覽

開啟你的 職業

完成課程,獲取認證

入門
廣告
© . All rights reserved.