mysql 数据管理系统(2)

#非空约束
alter table 表名 modify  names varchar(20) not  null
 #唯一约束
alter table mins add unique(id)
#主键约束  一个表只存在一个主键约束 并且不能为空
alter table mins add  primary key(id);
                             dorp
#自增约束(int)
alter table mins change id ids int auto-increment

#默认约束
alter table mins alter sex set default ‘男’

字段可以有多个约束   主键只能有一个
完整结构
create table text(
      ->id int primary key auto_increment,
      ->names varchar(20) not null,
      -> phone char (1) unique key
      -> )  auto_increment =1000 ,charset = utf8;

##外界约束
#创建学院表
create table department(
      d_id int primary key auto_increment,
       d_name varchar(20) not null
        );
#一对多
#创建学生表
create table students(
   s_id int primary key auto_increment,
   s_name varchar(20) not null,
    #外键字段,类型必须和主键字段保持一致
    dept_id int,
    foreign key(dept_id)references  department (d_id)  on delete set null
    );
#一对一
#学生详情表
create table stu_detail(
  sd_id int primary key auto_increment,
  s_age int,
  s_sex char(1) default '男‘,
   stu_id  int unique key,
   foreign key(stu_id) references  students (s_id)    on delete   cascade
   );
   
#创建课程表
create table course(
   c_id  int primary key auto_increment,
    c_name varchar(20)
    );

#创建中间表
 create table stu_course(
  -> s_id int,
  -> c _id int,
  -> primary key (s_id,c_id),#创建联合主键
  ->foreign key(s_id ) references students (s_id), #学生id 对应中间表学生id
  -> foreign key (c_id) references course (c_id) #课程id 对应课程表学生id
       );

##数据库三范式
 #第一范式
   要求每个列表的原子性
#第二范式
一张表只能显示一类型
#第二范式
消除非主属性码的传递函数依靠

##四要素
原子性(全完成或全不完成)
一致性(在执行顺序时必须按顺序进行)
隔离性(事务进行过程中不能受到其他事务影响)
持久性(对于提交的数据不会丢失)

begin  开启事务
rollback  回滚
commit 提交
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

败北:)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值