以下均要求以SQL语句实现,解答写在每个部分的【答题】下面.
创建默认数据库,DB_X1
- 创建数据表tbl_Users 用户表,字段要求如下
字段名 | 字段类型 | 约束 | 是否主键 | 说明 |
UserID | Char(4) | 非空 | 是 | 学号 |
UsertName | Varchar(30) | 非空 | 否 | 姓名 |
UserPassword | Varchar(20) | 非空 | 否 | 密码 |
StudentGender | Char(2) | 默认约束为‘男’ | 否 | 性别 |
2、tbl_purchases 购物
字段名 | 字段类型 | 约束 | 是否主键 | 说明 |
UserID | Char(4) | 非空 | 是, 外键依赖tbl_Users(UserID) 级联删除级联更新 | 学号 |
productID | Char(4) | 非空 | 是,外键依赖tbl_products (productID)联删除级联更新 | 商品编号 |
Number | Int | 非空 | 否 | 购买数量 |
buytime | Datetime | 默认值为当前时间 | 否 | 购买时间 |
3、tbl_products 商品表
字段名 | 字段类型 | 约束 | 是否主键 | 说明 |
productID | Char(4) | 非空, | 是 | 商品编号 |
ProductName | Varchar(30) | 非空 | 否 | 商品名称 |
Instock | Int | 非空 | 否 | 库存数量 |
【答题】
CREATE DATABASE DB_X1 #创建库
use DB_X1 #启动库
CREATE TABLE tbl_User( #创建表
UserID char(4)PRIMARY KEY not null comment'学号',
UsertName varchar(30) not null comment'姓名',
UserPassword varchar(20) not null comment'密码',
StudentGender char(2) DEFAULT'男' comment'性别'
)
desc tbl_user
CREATE TABLE tbl_products(
productID char(4)PRIMARY KEY not null comment'商品编号',
ProductName varchar(30) not null comment'商品名称',
Instock int not null comment'库存数量'
)
desc tbl_products
CREATE TABLE tbl_purchases(
UserID char(4) not null comment'学号',
productID char(4) not null comment'商品编号',
Number int not null comment'购买数量',
buytime datetime DEFAULT CURRENT_TIMESTAMP comment'购买时间',
PRIMARY key(UserID,productID),
CONSTRAINT UserID foreign key(UserID) REFERENCES tbl_User(UserID) on update cascade on delete cascade, #设置外键
CONSTRAINT productID foreign key(productID) REFERENCES tbl_products(productID) on update cascade on delete cascade #设置外键
)
desc tbl_purchases
show create table tbl_purchases