SQL研习录(23)——默认值约束(DEFAULT)

SQL研习录(23)——默认值约束(DEFAULT)


版权声明

  • 本文原创作者:清风不渡
  • 博客地址:https://blog.csdn.net/WXKKang

一、DEFAULT约束

  DEFAULT 约束用于规定某一列的默认值,如果在添加新记录的时候没有定义这一列的值,那么将会自动将默认值添加到新记录中

1、基本语法

  创建表(CREATE TABLE)时的默认值(DEFAULT)约束
  在My SQL / SQL Server / Oracle / MS Access数据库中,如果需要在创建表时定义某一列的默认值,则可使用以下语法:

CREATE TABLE table_name(
	column_name1 data_type (size) NOT NULL,
	column_name2 data_type (size) NOT NULL,
	column_name3 data_type (size) DEFAULT 'XXX',
	...
)

  我们还可以通过类似GETDATE()这样的函数,使用DEFAULT约束插入系统值,语法如下:

CREATE TABLE table_name(
	column_name1 data_type (size) NOT NULL,
	column_name2 data_type (size) NOT NULL,
	column_name3 data_type (size),
	column_name4 date DEFAULT GETDATE()
	...
)

  修改表(ALTER TABLE)时的默认值(DEFAULT)约束
  (1)在MySQL数据库中,当表已被创建时,如需在某一列创建 DEFAULT 约束则可使用下面的语法:

ALTER TABLE table_name 
ALTER column_name SET DEFAULT 'xxx'

  (2)在SQL Server / MS Access数据库中,当表已被创建时,如需在某一列创建 DEFAULT 约束则可使用下面的语法:

ALTER TABLE table_name 
ADD CONSTRAINT DF_tableName_columnName DEFAULT('xxx') FOR column_name

  注意: 约束名称的格式一般为:约束类型简称_表名_列名
  (3)在Oracle数据库中,当表已被创建时,如需在某一列创建 DEFAULT 约束则可使用下面的语法:

ALTER TABLE table_name 
MODIFY column_name DEFAULT 'xxx'

  撤销DEFAULT约束
  (1)在MySQL数据库中,如需撤销 DEFAULT 约束则可使用下面的语法:

ALTER TABLE table_name
ALTER column_name DROP DEFAULT

  (2)在SQL Server / Oracle / MS Access数据库中,如需撤销 DEFAULT 约束则可使用下面的语法:

ALTER TABLE table_name 
ALTER COLUMN column_name DROP DEFAULT
发布了81 篇原创文章 · 获赞 36 · 访问量 3342

猜你喜欢

转载自blog.csdn.net/WXKKang/article/details/103871208
今日推荐