2018.5.20 oracle强化练习
--现在有一个商店的数据库,记录客户以及购物的情况,
商品表goods
(商品号 goodsid varchar2(8)
商品名 goodsname varchar2(20)
单价 unitprice number(5,2)
商品的类别 category varchar2(8)
供应商 provider varchar2(20))
create table goods(
goodid varchar2(8),
goodname varchar2(20),
unitprice number(5,2),
category varchar2(8),
provider varchar2(20)
);
客户表customer
customerid varchar2(8)
name varchar2(20)
address varchar2(30)
email varchar2(30)
sex varchar2(8)
create table customer(
customerid varchar2(8),
name varchar2(20),
address varchar2(30),
email varchar2(30),
sex varchar2(8)
);
购买表purchase
客户号 customerid varchar2(8)
商品号 goodsid varchar2(20)
购买数量 nums number(2)
create table purchase(
customerid varchar2(8),
goodsid varchar2(20),
nums number(2)
);
用sql语句创建三张表
1、定义每个表的主、外键
alter table customer add constraint pk_customerid primary key(customerid);
alter table goods add constraint pk_goods_goodid primary key(goodid);
alter table purchase add constraint fk_purchase_customerid foreign key(customerid) references customer(customerid) on delete cascade;
alter table purchase add constraint fk_purchase_goodsid foreign key(goodsid) references goods(goodid) on delete cascade;
2、客户的姓名不能为空
alter table customer modify (name not null);
3、单价必须大于0,购买数量必须在1到30之间
alter table goods add constraint ck_unitPrice check(unitprice>0);
alter table purchase add constraint ck_nums check(nums between 1 and 30);
4、电邮不能重复
alter table customer add constraint un_email unique (email);
5、客户的性别必须是female或者male,默认是male
alter table customer modify (sex in('female','male') default 'male');
alter table customer modify(sex varchar2(8) default 'male' );
alter table customer add constraint ck_sex check(sex='female' or sex='male' );
--chakan yueshu
select constraint_name,table_name from user_constraints where table_name =upper('goods');
select constraint_name,table_name from user_constraints where table_name =upper('customer');
select constraint_name,table_name from user_constraints where table_name =upper('purchase ');
2018.5.20 oracle强化练习的更多相关文章
- OSC Source Code Innovation Salon(2018.10.20)
时间:2018.10.20地点:北京 朝阳 浦项中心B座2层
- PCB 所建不凡 AWS 技术峰会2018 • 深圳站 2018.9.20
在去[AWS 技术峰会2018 • 深圳站]之提前并没有AWS提前做功课,主要PCB这行业基本自己搭服务器搭应用,不会买云服务器.由于没用过企业级的云服务器,对云这方面还是了解还是非常有限的. 市面上 ...
- 2018.5.19 Oracle数据操作和管理表的综合练习
--作业一.使用自己的用户登录,完成如下操作,并且创建5条测试数据 -- 创建学生表(stu),字段如下: -- 学号(stuID) -- 姓名(stuName) -- 性别(stuSex) -- 入 ...
- 2018.5.9 Oracle数据库查询命令
0.查询所有数据(最简单,但是时间很久) select * from emp; Result: EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO ----- - ...
- 2018.8.20 Python之路---常用模块
一.re模块 查找: re.findall(‘正则表达式’,‘字符串’) 匹配所有符合正则表达式的内容,形成一个列表,每一项都是列表中的一个元素. ret = re.findall('\d+','sj ...
- oracle强化练习之分组函数
1. 显示平均工资为>2000的职位 select job,avg(sal) from emp group by job having avg(sal)>2500; 2. ...
- 2018.10.20 2018-2019 ICPC,NEERC,Southern Subregional Contest(Online Mirror, ACM-ICPC Rules)
i207M的“怕不是一个小时就要弃疗的flag”并没有生效,这次居然写到了最后,好评=.= 然而可能是退役前和i207M的最后一场比赛了TAT 不过打得真的好爽啊QAQ 最终结果: 看见那几个罚时没, ...
- 2018.9.20 Educational Codeforces Round 51
蒟蒻就切了四道水题,然后EF看着可写然而并不会,中间还WA了一次,我太菜了.jpg =.= A.Vasya And Password 一开始看着有点虚没敢立刻写,后来写完第二题发现可以暴力讨论,因为保 ...
- 2015.3.20 Oracle使用正则表达式
.Oracle正则表达式使用介绍 正则表达式具有强大.便捷.高效的文本处理功能.能够添加.删除.分析.叠加.插入和修整各种类型的文本和数据.Oracle从10g开始支持正则表达式 ..下面通过一些例子 ...
随机推荐
- 气泡提示 纯CSS
tooltip(气泡提示) 依赖 脚本文件:CalvinTip.js 样式文件:toolTip.css 参数 elems HTMLNode 必须 气泡提示的元素 options Object 可选 多 ...
- 关于map 及 map 骚操作
关于map这个东西 很冷门.................. 但是,这个博客带你稍微了解一下map: map用法:一般当作一个下表无穷大的数组 关于它的骚操作:map的鬼畜用法,可以 ...
- ch8 -- directMethod
稀疏直接法 主要用的g2o的方法.自己定义了一个新的一元边.边的误差项是测量值和由估计得来的x,y对应的灰度值之间的误差.导数为灰度对像素坐标的导数乘以像素坐标对yi*李代数的导数的负数.灰度对于像素 ...
- js千分位处理
一.去掉千分位 function removeThousands(num) { var x = num.split(','); return parseFloat(x.join("" ...
- jmeter使用BeanShell Sampler测试自己写的java接口(一)
上次直接使用jmeter里面的FTPsampler没有连接成功 现在想着自己写java代码,通过jmeter进行调用进行连接测试实现并发 代码引文: http://www.cnblogs.com/ch ...
- Jquery 实现表单验证,所有验证通过方可提交
1. [代码]Jquery 实现表单验证,所有验证通过方可提交 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ...
- 记录一个linux下批处理的代码
DATA_DIR=/home/liupan/.navinsight/data/dataset_rec SHELL_DIR=/home/liupan/workspace/nvi_postprocessi ...
- Hive 基本语法操练(四):Hive 复合类型
hive语法中主要提供了以下复合数据类型: 1)Structs: structs内部的数据可以通过DOT(.)来存取.例如,表中一列c的类型为STRUCT{a INT; b INT},我们可以通过c. ...
- Storm概念学习系列之Stream消息流 和 Stream Grouping 消息流组
不多说,直接上干货! Stream消息流是Storm中最关键的抽象,是一个没有边界的Tuple序列. Stream Grouping 消息流组是用来定义一个流如何分配到Tuple到Bolt. Stre ...
- 解析和操作XML文件
Dom4j工具 使用步骤: 1)导入dom4j的核心包. dom4j-1.6.1.jar 2)编写Dom4j读取xml文件代码 1,Domj4读取xml文件 ,准备工作:读取整个文档并获取根节点 // ...