“默认值(Default)”的完整称呼是“默认值约束(Default Constraint)”。MySQL 默认值约束用来指定某列的默认值。

例如女性同学较多,性别就可以默认为“女”。如果插入一条新的记录时没有为这个字段赋值,那么系统会自动为这个字段赋值为“女”。

在创建表时设置默认值约束

创建表时可以使用 DEFAULT 关键字设置默认值约束,具体的语法规则如下:

DEFAULT ;

【实例 1】创建数据表 测试_03,指定部门位置默认为 Beijing,输入的 SQL 语句和运行结果如下所示。

mysql> CREATE TABLE 测试_03 (id INT(11) PRIMARY KEY,name VARCHAR(22),location VARCHAR(50) DEFAULT 'Beijing');

Query OK, 0 rows affected (0.37 sec)

mysql> DESC 测试_03;

+----------+-------------+------+-----+---------+-------+

| Field    | Type        | Null | Key | Default | Extra |

+----------+-------------+------+-----+---------+-------+

| id       | int(11)     | NO   | PRI | NULL    |       |

| name     | varchar(22) | YES  |     | NULL    |       |

| location | varchar(50) | YES  |     | Beijing |       |

+----------+-------------+------+-----+---------+-------+

3 rows in set (0.06 sec)

以上语句执行成功之后,表 测试_03 上的字段 location 拥有了一个默认值 Beijing,新插入的记录如果没有指定部门位置,则默认都为 Beijing。

在修改表时添加默认值约束

修改表时添加默认值约束的语法规则如下:

ALTER TABLE

CHANGE COLUMN DEFAULT ;

【实例 2】修改数据表测试_03,将部门位置的默认值修改为 Shanghai,输入的 SQL 语句和运行结果如下所示。

mysql> ALTER TABLE测试_03 CHANGE COLUMN location location VARCHAR(50) DEFAULT 'Shanghai';

Query OK, 0 rows affected (0.15 sec)

mysql> DESC测试_03;

+----------+-------------+------+-----+----------+-------+

| Field    | Type        | Null | Key | Default  | Extra |

+----------+-------------+------+-----+----------+-------+

| id       | int(11)     | NO   | PRI | NULL     |       |

| name     | varchar(22) | YES  |     | NULL     |       |

| location | varchar(50) | YES  |     | Shanghai |       |

+----------+-------------+------+-----+----------+-------+

3 rows in set (0.00 sec)

删除默认值约束

修改表时删除默认值约束的语法规则如下:

ALTER TABLE

CHANGE COLUMN DEFAULT NULL;

【实例 3】修改数据表 测试_03,将部门位置的默认值约束删除,输入的 SQL 语句和运行结果如下所示。

mysql> ALTER TABLE 测试_03 CHANGE COLUMN location ocation VARCHAR(50) DEFAULT NULL;

Query OK, 0 rows affected (0.15 sec)

mysql> DESC测试_03;

+----------+-------------+------+-----+----------+-------+

| Field    | Type        | Null | Key | Default  | Extra |

+----------+-------------+------+-----+----------+-------+

| id       | int(11)     | NO   | PRI | NULL     |       |

| name     | varchar(22) | YES  |     | NULL     |       |

| location | varchar(50) | YES  |     | NULL     |       |

+----------+-------------+------+-----+----------+-------+

3 rows in set (0.00 sec)

遇到不明白的地方可以联系本人:

mysql怎么约束指定默认值_mysql 默认值约束相关推荐

  1. mysql 查询空字符串 设置默认值_MySQL默认值选型是空,还是 NULL-爱可生

    如果对一个字段没有过多要求,是使用""还是使用 NULL,一直是个让人困惑的问题.即使有前人留下的开发规范,但是能说清原因的也没有几个.NULL 是""吗?在辨 ...

  2. mysql 动态传入表名 存储过程_MySQL之常见约束以及事务和存储过程

    常见约束 数据库约束就是一种限制,用于限制表中行和列的数据,为了保证表中的数据准确和可靠 约束分类 六大约束 NOT NULL :       非空约束,用于保证该字段的值不能为空DEFAULT:   ...

  3. mysql 的 null值_MySQL NULL值

    我们已经看到SQL SELECT命令和WHERE子句一起使用,来从MySQL表中提取数据,但是,当我们试图给出一个条件,比较字段或列值设置为NULL,它确不能正常工作. 为了处理这种情况,MySQL提 ...

  4. mysql的默认字符集_mysql默认字符集修改

    修改为utf8 或者 utf8mb4 (1) 最简单的修改方法,就是修改mysql的my.ini文件中的字符集键值,添加 [mysql] default-character-set = utf8 [m ...

  5. mysql的默认密码_mysql默认密码是多少

    展开全部 mysql默认密码设置如下命令就可以获得: cd/ PATH="$PATH":/usr/local/mysql/bin mysql -u root -p mysql> ...

  6. mysql默认数据库_MySQL默认数据库简介

    类似于MS SQL Server等大型数据库,MySQL数据库也提供了内置的数据库,它们是:INFORMATION_SCHEMA mysql test 1.information_schema 其中, ...

  7. mysql的默认端口_MYSQL默认使用的端口是( )

    认使我们似乎必须对为什么相信他人心灵的存在给出一个(). 端口ThethreetownsofWuhanare: 认使WhichstatementofWuhan'sclimateareright? 端口 ...

  8. mysql外键约束语句级连_mysql之外键约束(级联操作等) 父表子表

    不理解的地方标注问号. 网上不同的博客讲的,之间似乎有些矛盾,求推荐好书. 写得不好请指出错误. 父表和子表 当两个表建立一对多关系的时候,"一"的那一端是父表,"多&q ...

  9. mysql中约束由数字构成_MySQL 数据类型和约束(外键是重点)

    数据类型 1. 数字(默认都是由符号,宽度表示的是显示宽度,与存储无关).tinyint 括号里指定宽度 七位2进制数最大数就是2**7 -1=127 最小是-128 验证: create tabel ...

最新文章

  1. node.js cannot find module
  2. ISA三向外围网络模板说明
  3. 使用UIScrollView 实现分页功能
  4. WINCE的FFMPEG交叉编译环境搭建
  5. 天池学习赛:工业蒸汽量预测1——数据探索
  6. Python可视化工具Matplotlib 3.0版出炉,改进默认后端选择,饼图终于变圆了
  7. 小汪Hibernate 学习之一 Hibernate 小例子
  8. 软件工程实践—软件评测
  9. Python多项逻辑回归用LogisticRegression识别英文字母数据集letter-recognition.data
  10. arcgis for js4.x自定义图例位置添加到地图并导出
  11. 转载的一篇关于矢量字体的文章
  12. html5中,contextmenu 和 spellcheck
  13. php寻仙记,wap寻仙记
  14. java二分排序法原理_Java常见排序算法详解—— 二分插入排序
  15. Elasticsearch:如何在搜索时得到精确的总 hits 数
  16. Viewstate verification failed 解决办法
  17. 关于最大公约数与最大公倍数的相关问题(zufeoj)
  18. 数据技术前沿趋势、TiDB 产品方向、真实场景 Demo… 丨PingCAP DevCon 2022 产品技术论坛预览
  19. 前中后序遍历-java模板代码
  20. UE4 虚幻4游戏程序编程开发零基础视频教程

热门文章

  1. 为零售业敲响警钟:关注行业数字化转型的未来趋势
  2. 递归与分形(二)--谢尔斯宾三角形,谢尔斯宾地毯,门格海绵
  3. 【饭谈】如何避免“面试造航母,进来拧螺丝”
  4. pdf.js在线预览PDF文件实现
  5. led灯接线分火线零线吗?接反会怎样
  6. VR设备有哪些?哪些VR设备适合开科技馆?哪些VR设备适合开儿童娱乐馆?
  7. 关于发布《深圳市培育发展软件与信息服务产业集群行动计划(2022-2025年)》的通知
  8. 推荐一个谷歌浏览器插件:AdGuard 广告拦截器(类似与火绒的广告拦截)
  9. AITO问界系列大卖背后,华为正在孵化更多的“赛力斯”
  10. 潮流计算中,已知末端功率和首端电压,手算方法