我的mysql小笔记

数据库实践教学笔记

  • 表的创建

关系数据库通过表来维护数据

列:字段名称

行:

创建ER图

  1. E   entity实体
  2. R   relation关系
  3. 实体与关系的属性
  4. 一对一,一对多(外键),多对多(关系表)

ER图说明:

学生(学号,姓名,年龄,性别)学号是学生的主码

班级(班级编号,班级名字,专业)

课程(课程编号,课程名称)

对于多对多的关系,放在同一个表里,显现不出来,所以创建一个新表。

创建表时,并不是一个管理员对应多个员工,而是所有管理员都可以对员工进行操作。

第一范式:字段不可分割

第二范式:每一个字段都有主键

第三范式:依赖要唯一,不能传递。(唯一)

在MySQL中创建表

Create table 表名()

字段名称  数据类型(长度)

字段名称  数据类型(长度)

~~~~~~~

字段名称  数据类型(长度)

 

 

Varchar 可变字符   zs  2个长度

Char               zs   10个长度  (后面补充空格)

修改表

Alter table 表名

Modify  字段名字 varchar (20)

删除表

Drop table 表名

 

DDL(data definitio language 数据库定义语言 )的三个命令:creat alter drop

 

表的约束

约束:主键约束;非空约束;唯一约束;外界约束;默认值约束;

检查约束;

注意:检查约束在mysql中不支持。

  • 主键约束:每一个表都有唯一标识一行数据的字段,这个字段就是主键约束

如何创建主键约束:

  1. (列级约束) Creat table 表名(字段名 数据类型(长度)  primary key

字段名 数据类型(长度),

~~~~~~~~~)

  1. (表级约束) Creat table 表名(字段名 数据类型(长度) ,

字段名 数据类型(长度),

~~~~~~~~~

Constraint 约束的名字 约束类型 (字段))

                                         Pk_classid   primary key  (classid)

  1. 通过修改表来添加约束  

   Alter table 表名

           Modify column 字段名 数据类型(长度) primary key

  Alter table 表名

   Add  Constraint 约束的名字 约束类型 (字段)

联合主键:

一个表只能有一个主键,但是一个主键可以创建在多个字段上。

  • 非空约束:字段必须填写值
  1. Create table 表名

  字段名 数据类型(长度) not null,

  字段名 数据类型(长度),

~~~~~~~

  1. 修改表
  2. Constraint  Pk_classid   not null (classid)  无效
  3. Modify column 字段名 数据类型(长度) primary key  可行

注意:通过修改表来添加非空约束的时候,表里不能有已经违反非空约束的数据。

  • 唯一约束

要求字段的名字是唯一的。和主键约束区别于唯一约束的字段是可以为空的,而主键不允许为空。两个为空的数据不违反唯一约束。

  1. 字段名 字段类型 (长度)unique
  2. Constraint 修改名 unique (要修改的字段名)
  3. Add Constraint 修改名 unique (要修改的字段名)   (修改表的方式alter)

  注意:通过修改表来创建唯一约束,要求表中不能存在违反唯一约束的数据

    (四) 外键约束:

  1. Add constraint fk_klassid foreign ke
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值