数据库建表练习
练习要求:
- 新建产品库mydb6_product,新建3张表如下:
- employees表
- 列1:id,整型,主键
- 列2:name,字符串,最大长度50,不能为空
- 列3:age,整型
- 列4:gender,字符串,最大长度10,不能为空,默认值‘unknown’
- 列5:salary,浮点型
- orders表
- 列1:id,整型,主键
- 列2:name,字符串,最大长度100,不能为空
- 列3:price,浮点型
- 列4:quantity,整型
- 列5:category,字符串,最大长度50
- invoices表
- 列1:number,整型,主键自增长
- 列2:order_id,整型,外键关联到orders表的id列
- 列3:in_date:日期型
- 列4:total_amount:浮点型,要求数据大于0
- employees表
命令
创建数据库
mysql> create database mydb6_product;
记得使用新创建的数据库
创建employees表
mysql> create table employees(-> id int primary key,-> name varchar(50) not null,-> age int,-> gender char(10) not null default 'unknown',-> salary float);
Query OK, 0 rows affected (0.02 sec)
查看表的结构
创建orders表
mysql> create table orders(-> id int primary key,-> name varchar(100) not null,-> price float,-> quantity int,-> category varchar(50));
Query OK, 0 rows affected (0.02 sec)
查看表的结构
创建invoices表
mysql> create table invoices(-> number int primary key auto_increment,-> order_id int,-> in_date date,-> total_amount float,-> foreign key(order_id) references orders(id),-> check(total_amount>0));
Query OK, 0 rows affected (0.02 sec)
至此,可见三张表全部创建完毕,接下来需要进行插入测试,确保表的结构没有问题。
可见employees表没有问题
可见orders表也没有问题
可见invoices也没有问题,至此建表练习完成。
总结
通过本次练习复习了各个建表语句以及各种约束的格式和使用。