oracle练习。用SQL语句建表。现有一个公司的部门及雇员的数据库,由下面三个表组成:
现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:商品goods(商品号goodsID,商品名goodsName,单价unitprice,商品类别catego...
现有一个商店的数据库,记录顾客及其购物情况,由下面三个表组成:商品goods(商品号goodsID,商品名goodsName,单价unitprice,商品类别category,供应商provider);顾客customer(顾客号customerID,姓名name,住址address,电子邮件email,性别sex,身份证cardID);购买purcase(顾客号customerID,商品号goodsID,购买数量nums);
请用SQL语句按照下面的要求分别建立三张表:
(1)每个表的主外键
(2)客户的姓名不能为空
(3)单价必须大于0,购买数量必须在1到30之间
(4)电子邮件不能重复
(5)客户的性别必须是男或女,默认为男 展开
请用SQL语句按照下面的要求分别建立三张表:
(1)每个表的主外键
(2)客户的姓名不能为空
(3)单价必须大于0,购买数量必须在1到30之间
(4)电子邮件不能重复
(5)客户的性别必须是男或女,默认为男 展开
1个回答
展开全部
SQL> create table goods(goodsId char(8) primary key, --主键 goodsName varchar2(30), unitprice number(10,2) check(unitprice>0), category varchar2(8), provider varchar2(30) ); SQL> create table customer( customerId char(8) primary key, --主键 name varchar2(50) not null, --不为空 address varchar2(50), email varchar2(50) unique, sex char(2) default '男' check(sex in ('男','女')), -- 一个char能存半个汉字,两位char能存一个汉字 cardId char(18) ); SQL> create table purchase( customerId char(8) references customer(customerId), goodsId char(8) references goods(goodsId), nums number(10) check (nums between 1 and 30) );
希望对你有所帮助~
希望对你有所帮助~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询