MySQL表定义与完整性约束控制——学习笔记

数据表是数据库中最重要、最基本的操作对象,是数据库基本的存储单位。

表中每一行代表一条唯一的记录,每一列(字段)代表记录中的一个域。

一、数据表的操作

1、创建数据表

创建一个表名为stu1的数据表,里面含有学生编号、学生姓名、学生性别、专业四个字段。

mysql> create table stu1(
    -> sno varchar(20) not null,
    -> sname varchar(20) not null,
    -> ssex enum('','') not null,
    -> zno varchar(4) not null,
    -> primary key(sno)
    -> )
    -> engine=innoDB default charset=utf8 collate=utf8_bin;

其中,primary key 表示主键,engine为设置表的存储引擎,default charset 为设置表的字符集,collate为设置压缩索引关键字。

2、查看数据表结构

1)查看表的名称

 show tables; 

 2)显示表的结构(3种)

desc stu1;
describe stu1;
show create table stu1;

 

 3、修改数据表

1)修改数据表名,将stu1表改为stu。

alter table stu1 rename stu;

2)修改字段数据类型,将原来的varchar(20)修改为varchar(30),利用modify关键字。

alter table stu modify sname varchar(30);

3)修改字段名,将ssex改为sex。

alter table stu change ssex sex varchar(4);

4)添加数据表字段,添加了一个sbirth字段,类型是date。

alter table stu add sbirth date not null;

5)删除字段,删除zno字段。

alter table stu drop zno;

6)修改字段排序,将sex放在sbirth的后面。

alter table stu modify sex varchar(4) after sbirth;

7)更改表的存储引擎,将原来的innoDB改为myisam。

alter table stu engine=myisam;

8)删除表中的外键约束

alter table stu drop foreign key zno;

4、复制数据表

1)复制一个stu2表

create table stu2 like stu;

2)选择stu中的某些字段复制成stu3表。

create table stu3 as select sno,sname from stu;

 5、删除数据表

drop table if exists stu2,stu3;

 

6、注意事项

1)null值和空字符是不一样的

2)长度小于4的varchar类型会被改变为char类型

二、MySQL约束控制

posted @ 2020-12-09 22:13  乘“疯”破浪  阅读(222)  评论(0编辑  收藏  举报