mysql表操作约束_MySQL操作表的约束

完整性:指数据库的准确性和一致性。

约束:是在表中定义的用于维护数据库完整性的一些规则。

主键:给某一个字段来唯一标识所有记录,值是唯一的,非空的

外键:多个表之间参照的完整性。

一、设置非空约束

use教学管理数据库;

show tables;create table专业表(

专业编号char(3) not null,

专业名称varchar(30)

);desc 专业表;

二、设置字段的默认值

drop table专业表;create table专业表(

专业编号char(3) not null(约束),

专业名称varchar(30) default(默认的) '计算机');

desc 学生表;

三、设置唯一约束

drop table专业表;create table专业表(

专业编号char(3) not null,

专业名称varchar(30) default(默认的) '计算机' unique(唯一)

);

desc 专业表;

四、设置主键约束

1)单字段主键drop table专业表;create table专业表(

专业编号char(3) not null(约束) primary(主要) key(设置主键约束),

专业名称varchar(30)

);

desc 专业表;

(2)多字段主键

drop table专业表;create table专业表(

专业编号char(3) not null,

专业名称varchar(30),constraint pk_专业编号_专业名称 primary key(设置主键约束)(专业编号,专业名称)

);

查看表结构

desc 专业表;

五、设置字段值自动增长

drop table专业表;create table专业表(

专业编号int primary key(设置主键约束) auto_increment(设置字符段自动增长),

专业名称varchar(30)

);

查看表结构

desc 专业表;

六、设置外键

desc学生表;desc专业表;drop table学生表;create table学生表(

学生编号char(4) primary key(设置主键约束),

学生姓名varchar(10),

所属专业编号int,

所属班级编号char(3),

职务varchar(6),

性别char(1),

出生日期datetime,

籍贯varchar(50),

入学日期datetime,constraint(约束) fk_所属专业编号 foreign key(设置外键)(所属专业编号)references(依附,属于) 专业表(专业编号)

);

查看表结构

desc 学生表;

MySQL所支持的完整性约束

设置非空约束,含义:设置字段不能为空值

2.设置字段默认值,含义:当为数据库表中插入一条新记录时;如果没有为某个字段赋值那么数据库会自动为这个字段插入默认值。

3.设置唯一约束;含义:设置不允许重复,保证不能重复

4.设置主键约束;含义:表示该字段可以唯一的表示所有记录

5.设置字符自动增长;含义:一个数据库表中只能有一个字段使用该约束,该字段类型必须是整形

6.设置外键约束;含义:外加约束则保证多个表之间的参照完整性构建两个表的两个字段之间的关系

字段值自动增长的优点

当为数据库表中插入新纪录时,字段上的值会自动生成唯一的ID

设置字段的默认值有什么优点

如果没有为某个字段赋值那么数据库会自动为这个字段插入默认值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值