比如,在用户信息表中,如果不添加用户名,那么这条用户信息就是无效的,这时就可以为用户名字段设置非空约束。

在创建表时设置非空约束

创建表时可以使用 NOT NULL 关键字设置非空约束,具体的语法格式如下:

<字段名> <数据类型> NOT NULL;

例 1

创建数据表 tb_dept4,指定部门名称不能为空,SQL 语句和运行结果如下所示。

mysql> CREATE TABLE tb_dept4    -> (    -> id INT(11) PRIMARY KEY,    -> name VARCHAR(22) NOT NULL,    -> location VARCHAR(50)    -> );Query OK, 0 rows affected (0.37 sec)mysql> DESC tb_dept3;+----------+-------------+------+-----+---------+-------+| Field    | Type        | Null | Key | Default | Extra |+----------+-------------+------+-----+---------+-------+| id       | int(11)     | NO   | PRI | NULL    |       || name     | varchar(22) | NO   |     | NULL    |       || location | varchar(50) | YES  |     | NULL    |       |+----------+-------------+------+-----+---------+-------+3 rows in set (0.06 sec)

修改表时设置非空约束的语法格式如下:

ALTER TABLE <数据表名>
CHANGE COLUMN <字段名>
<字段名> <数据类型> NOT NULL;

例 2

修改数据表 tb_dept4,指定部门位置不能为空,SQL 语句和运行结果如下所示。

mysql> ALTER TABLE tb_dept4    -> CHANGE COLUMN location    -> location VARCHAR(50) NOT NULL;Query OK, 0 rows affected (0.15 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> DESC tb_dept4;+----------+-------------+------+-----+----------+-------+| Field    | Type        | Null | Key | Default  | Extra |+----------+-------------+------+-----+----------+-------+| id       | int(11)     | NO   | PRI | NULL     |       || name     | varchar(22) | NO   |     | NULL     |       || location | varchar(50) | NO   |     | NULL     |       |+----------+-------------+------+-----+----------+-------+3 rows in set (0.00 sec)

ALTER TABLE <数据表名>
CHANGE COLUMN <字段名> <字段名> <数据类型> NULL;

例 3

修改数据表 tb_dept4,将部门位置的非空约束删除,SQL 语句和运行结果如下所示。

mysql> ALTER TABLE tb_dept4    -> CHANGE COLUMN location    -> location VARCHAR(50) NULL;Query OK, 0 rows affected (0.15 sec)Records: 0  Duplicates: 0  Warnings: 0mysql> DESC tb_dept4;+----------+-------------+------+-----+----------+-------+| Field    | Type        | Null | Key | Default  | Extra |+----------+-------------+------+-----+----------+-------+| id       | int(11)     | NO   | PRI | NULL     |       || name     | varchar(22) | NO   |     | NULL     |       || location | varchar(50) | YES  |     | NULL     |       |+----------+-------------+------+-----+----------+-------+3 rows in set (0.00 sec)

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. Linux下MYSQL 5.7 找回root密码的问题(亲测可用)
  3. MySQL 什么时候使用INNER JOIN 或 LEFT JOIN
  4. vue 基础语法及购物车小案例
  5. python起点网月票榜字体反爬案例
  6. android从服务器下载文件(php+apache+win7+MySql)
  7. 【有图】android通过jdbc连接mysql(附文件)
  8. Android实现手机定位的案例代码
  9. Android(安卓)Studio项目/Flutter 案例Gradle报错通用解决方案(包

随机推荐

  1. 修改系统分辨率
  2. Android framework完整源码下载
  3. Android关闭其他程序
  4. js 与安卓或ios 的交互传参
  5. android中的两端对齐
  6. android屏幕常亮
  7. Android获取通话状态
  8. android TextView的跑马灯效果的实现
  9. view measure详解
  10. Android通过App启动另一个APP