数据库实验练习一

  • 练习内容
  • 1. 创建一个表;Tuser
  • 2. 有如下字段及要求:
  • 3. 修改所在班级的类型为:int;
  • 4. 调整所在班级字段位置为:姓名字段的后面;
  • 5. 修改姓名字段为非空属性;
  • 6. 修改所在班级的字段名为班级;
  • 7. 添加一个所有值都为空的记录;
  • 8. 添加一个只有学号的记录;
  • 9. 添加一个有学号、姓名的记录;
  • 10. 添加一个有序号、学号、姓名的记录;序号为11;
  • 11. 添加一个有所有信息的记录;
  • 12. 修改序号为1的记录,姓名为小明;
  • 13. 添加一个序号为11的小强同学的记录;
  • 14. 为表添加出生日期字段;类型为日期型;
  • 15. 修改小明同学的序号为15;
  • 16. 查询序号为11的记录;
  • 17. 查询所有男生的记录;
  • 18. 删除序号为1的记录;


练习内容

1. 创建一个表;Tuser

2. 有如下字段及要求:

序号,int类型,自增;主键;
学号,char(10);唯一索引;
姓名:varchar(20);
性别:枚举类型,取值为男或女;
籍贯:varchar(50);
所在班级:varchar(20);后面做外键;

create table Tuser(
    -> 序号 int,
    -> 学号 char(10),
    -> 姓名 varchar(20),
    -> 性别 ENUM('male','female'),
    -> 籍贯 varchar(50),
    -> 所在班级 varchar(20)
    -> );
 alter table Tuser add primary key(序号);
 alter table Tuser modify 序号 int unsigned auto_increment;
 alter table Tuser add unique(学号);

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段_02

3. 修改所在班级的类型为:int;

alter table Tuser modify column 所在班级 int;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql_03

4. 调整所在班级字段位置为:姓名字段的后面;

alter table tuser modify 所在班级 int after 姓名;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段名_04

5. 修改姓名字段为非空属性;

alter table tuser modify column 姓名 varchar(20) not null;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段_05

6. 修改所在班级的字段名为班级;

alter table tuser change 所在班级 班级 int;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_枚举类型_06

7. 添加一个所有值都为空的记录;

insert into tuser value(null,null,null,null,null,null);
ERROR 1048 (23000): Column '姓名' cannot be null

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段_07

8. 添加一个只有学号的记录;

mysql> insert into tuser (学号) value (180706201);
ERROR 1364 (HY000): Field '姓名' doesn't have a default value

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段名_08

9. 添加一个有学号、姓名的记录;

insert into tuser(学号,姓名) value(182001,'张三');

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql_09

10. 添加一个有序号、学号、姓名的记录;序号为11;

insert into tuser(序号,学号,姓名) value(11,182011,'李四');

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_枚举类型_10

11. 添加一个有所有信息的记录;

insert into tuser value(2,182002,'王五','182','female','河北省石家庄市');

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql_11

12. 修改序号为1的记录,姓名为小明;

update tuser set 姓名='小明' where 序号=1;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql_12

13. 添加一个序号为11的小强同学的记录;

insert into tuser value(11,182002,'小强','182','male','河北省石家庄市');
ERROR 1062 (23000): Duplicate entry '11' for key 'tuser.PRIMARY'

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_枚举类型_13

14. 为表添加出生日期字段;类型为日期型;

alter table tuser add column 出生日期 date after 性别;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段名_14

15. 修改小明同学的序号为15;

update tuser set 序号=15 where 姓名='小明';

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段_15

16. 查询序号为11的记录;

select * from tuser where 序号 = 11;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_字段_16

17. 查询所有男生的记录;

select * from tuser where 性别='male';

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_mysql_17

18. 删除序号为1的记录;

delete from tuser where 序号=2;

multiprocessing创建独立命名的log类 创建一个名为vw_dept_sum_枚举类型_18