欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql (六)

程序员文章站 2022-05-18 22:37:40
约束: 非空约束: 创建表时添加: create table stu( id int , name varchar(20) not null ) 创建完表之后 alter table stu modify name varchar(20) not null 删除约束: alter table stu ......

约束:

  非空约束:

    创建表时添加:

      create table stu(

        id  int ,

        name  varchar(20) not null

        )

    创建完表之后

      alter table stu  modify name varchar(20) not  null

    删除约束:

      alter table stu  modify  name  varchar(20)

 

   唯一约束:

      创建表时添加:

      create table stu(

        id int ,

        name varchar(20)unique

          )  #给name字段添加唯一约束

      创建表后添加:

      alter table  stu modify  name  varchar(20) unique

      删除唯一约束:

      alter  table stu drop  index  name 

   主键约束:

      创建表时添加:

       create table stu(

         id int primary  key  ,

         name varchar(20)

         )

      创建表后添加:

      alter table stu modify  id int primary key 

      删除主键:

      alter table stu drop primary key

   自动增长:

      创建表时,给主键添加自动增长

      create table stu(

          id int primary  key auto_increment,

          name varchar(20)

          )

      创建表之后添加:

      alter table stu modify id int auto_increment

      删除自动增长:

      alter table  stu modify  id  int 

    外键约束:

      创建表时添加外键约束:

      create table 表名(

            ....

            constraint  外键名称  foreign  key  (外键列名称) references  主表名称(主表列名称)

      示例:

        create table stu(

            id int ,

            class_id int,

            constraint  stu_class_fk foreign key (class_id) references  class(id) 

          )

       创建完表之后添加:

         alter table stu  add constraint  stu_class_fk

                foreign key (class_id) references  class(id) 

       删除外键:

         alter table 表名  drop foreign key  外键名称

       级联删除,更新:

          alter table stu  add constraint  stu_class_fk

                foreign key (class_id) references  class(id) 

                 on update cascade  ondelete  cascade