Oracle数据库建表并用SQL编程分等级
--创建学生表
create table XS_543
( XH char(6) not null ,
XM varchar2(20) not null,
ZYM varchar2(10),
XB char(4) default '男',
CSSJ date,
ZXF number(2),
BZ varchar2(100),
constraint pk_xh primary key(xh)
);
--创建课程表
create table KC_543
(
KCH char(3) not null ,
KCM varchar2(20) not null ,
KKXQ number(1) default 1 ,
XS number(2),
XF number(1),
constraint pk_kch primary key (kch),
constraint ck_kkxq check(KKXQ between 1 and 8)
);
--创建成绩表
create table XS_KC_543
(
XH char(6) not null ,
KCH char(3) not null ,
CJ number(3),
constraint pk_xh_kch primary key (XH,KCH),
constraint fk_xh foreign key (xh) references xs_543(xh),
constraint fk_kch foreign key (kch) references kc_543(kch)
);
--插入数据
insert into XS_543 values('061101','王林', '计算机','男',to_date('1986-2-01','yyyy-mm-dd'),50,null);
insert into XS_543 values('061102','程明', '计算机','男',to_date('1987-2-10','yyyy-mm-dd'),50,null);
insert into XS_543 values('061103','王燕', '计算机','女',to_date('1985-1-06','yyyy-mm-dd'),50,null);
insert into XS_543 values('061104','韦10严平','计算机','男',to_date('1986-8-26','yyyy-mm-dd'),50,null);
insert into XS_543 values('061106','李方方','计算机','男',to_date('1986-11-20','yyyy-mm-dd'),50,null);
insert into XS_543 values('061107','李明', '计算机','男',to_date('1986-5-01','yyyy-mm-dd'),54,'提前修完数据结构');
insert into XS_543 values('061108','林一帆','计算机','男',to_date('1985-8-05','yyyy-mm-dd'),50,'已提前修完一门课');
insert into XS_543 values('061109','张强民','计算机','男',to_date('1984-8-11','yyyy-mm-dd'),50,null);
insert into XS_543 values('061110','张蔚', '计算机','女',to_date('1987-7-22','yyyy-mm-dd'),50,'三好学生');
insert into XS_543 values('061111','赵琳', '计算机','女',to_date('1986-3-18','yyyy-mm-dd'),50,null);
insert into XS_543 values('061113','严红', '计算机','女',to_date('1985-8-11','yyyy-mm-dd'),48,'一门课不及格');
insert into XS_543 values('061201','王敏', '通信工程', '男',to_date('1984-6-10','yyyy-mm-dd'),42,null);
insert into XS_543 values('061202','王林', '通信工程', '男',to_date('1985-1-29','yyyy-mm-dd'),42,null);
insert into XS_543 values('061203','王玉民','通信工程','男',to_date('1986-3-26','yyyy-mm-dd'),42,null);
insert into XS_543 values('061204','马琳琳','通信工程','女',to_date('1984-2-10','yyyy-mm-dd'),42,null);
insert into XS_543 values('061206','李计', '通信工程','女',to_date('1985-9-20','yyyy-mm-dd'),42,null);
insert into XS_543 values('061210','李红庆','通信工程','女',to_date('1985-5-10','yyyy-mm-dd'),44,'提前修完一门课');
insert into XS_543 values('061216','孙祥欣', '通信工程','女',to_date('1984-3-09','yyyy-mm-dd'),42,null);
insert into XS_543 values('061218','孙研', '通信工程','男',to_date('1986-10-9','yyyy-mm-dd'),42,null);
insert into KC_543 values('101','计算机基础',1,80,5);
insert into KC_543 values('102','程序设计语言',2,68,4);
insert into KC_543 values('206','离散数学',2,68,4);
insert into KC_543 values('208','数据结构',5,68,4);
insert into KC_543 values('209','操作系统',6,68,4);
insert into KC_543 values('210','计算机原理',7,85,5);
insert into KC_543 values('212','数据库原理',7,68,4);
insert into KC_543 values('301','计算机网络',7,51,3);
insert into KC_543 values('302','软件工程',7,51,3);
insert into XS_KC_543 values('061101','101',80);
insert into XS_KC_543 values('061101','102',78);
insert into XS_KC_543 values('061101','206',76);
insert into XS_KC_543 values('061103','101',62);
insert into XS_KC_543 values('061103','206',81);
insert into XS_KC_543 values('061103','102',70);
insert into XS_KC_543 values('061104','101',90);
insert into XS_KC_543 values('061104','102',84);
insert into XS_KC_543 values('061104','206',65);
insert into XS_KC_543 values('061102','102',78);
insert into XS_KC_543 values('061102','206',78);
insert into XS_KC_543 values('061107','101',78);
insert into XS_KC_543 values('061107','102',80);
insert into XS_KC_543 values('061107','206',68);
insert into XS_KC_543 values('061108','101',85);
insert into XS_KC_543 values('061108','102',64);
insert into XS_KC_543 values('061108','206',87);
insert into XS_KC_543 values('061109','101',66);
insert into XS_KC_543 values('061109','102',83);
insert into XS_KC_543 values('061109','206',70);
insert into XS_KC_543 values('061111','206',76);
insert into XS_KC_543 values('061113','101',63);
insert into XS_KC_543 values('061113','102',79);
insert into XS_KC_543 values('061113','206',60);
insert into XS_KC_543 values('061201','101',80);
insert into XS_KC_543 values('061202','101',65);
insert into XS_KC_543 values('061203','101',87);
insert into XS_KC_543 values('061204','101',91);
insert into XS_KC_543 values('061210','101',76);
commit;
declare
v_xh xs_kc_543.xh%type;
v_kch xs_kc_543.kch%type;
v_cj xs_kc_543.cj%type;
rank char(2);
begin
v_xh:=&v_xh;
v_kch:=&v_kch;
select cj into v_cj from xs_kc_543 where xh=v_xh and kch=v_kch;
case v_cj/10
--上次这个地方出错了
when 9 then rank:='a';
when 8 then rank:='b';
when 7 then rank:='c';
when 6 then rank:='d';
when 5 then rank:='e';
end case;
dbms_output.put_line(rank);
end;
Oracle数据库建表并用SQL编程分等级的更多相关文章
- PowerDesigner连接Oracle数据库建表序列号实现自动增长
原文:PowerDesigner连接Oracle数据库建表序列号实现自动增长 创建表就不说了.下面开始介绍设置自动增长列. 1 在表视图的列上创建.双击表视图,打开table properties — ...
- Oracle数据库查看表空间sql语句
转: Oracle数据库查看表空间sql语句 2018-09-03 15:49:51 兰海泽 阅读数 6212 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出 ...
- 字段自动递增的数据库建表的SQL写法
数据库建表的SQL写法如下: 数据库建表的SQL写法如下: create table dataC( a int identity(1,2) primary key, b varchar(20)) ...
- oracle数据库锁表,什么SQL引起了锁表?ORACLE解锁的方法
--查询数据库锁表记录 select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.l ...
- Oracle数据库建表+添加数据练习
SQL脚本: --建表 --student表+注释 create table student( sno ) not null, sname ) not null, ssex ) not null, s ...
- oracle数据库建表
create or replace directory dumpdir as 'E:\oracle\dumpdir';create temporary tablespace ydxt_temp tem ...
- oracle数据库建表设置自增主键
create sequence userlogin_ID increment by 1 start with 1 minvalue 1 maxvalue 9999999999999999 nocach ...
- Oracle导入建表的sql文件类型
- 数据库建表参考(SQL Server)
(1).字段设置为Not Null+Default Value.原因:减少三值判断,可为Null的字段要多判断null:另外,定长字段为null也占空间,变长字段为空字符串也是不占空间,所以设置成 ...
随机推荐
- Atitit 图像处理—图像形态学(膨胀与腐蚀)
Atitit 图像处理-图像形态学(膨胀与腐蚀) 1.1. 膨胀与腐蚀1 1.2. 图像处理之二值膨胀及应用2 1.3. 测试原理,可以给一个5*5pic,测试膨胀算法5 1.4. Photoshop ...
- fir.im Weekly - 如何写出零 bug 的代码
神兽护体,代码无bug.经常看到代码注释的各种形状,这是一种程序员情怀.那么,如何能写出零 Bug 的代码呢,来看看@码农翻身 的这篇手册--零Bug的代码是怎么炼成的. 写零 Bug 一定少不了代码 ...
- python开启简单webserver
python开启简单webserver linux下面使用 python -m SimpleHTTPServer 8000 windows下面使用上面的命令会报错,Python.Exe: No Mod ...
- 新手入门:史上最全Web端即时通讯技术原理详解
前言 有关IM(InstantMessaging)聊天应用(如:微信,QQ).消息推送技术(如:现今移动端APP标配的消息推送模块)等即时通讯应用场景下,大多数都是桌面应用程序或者native应用较为 ...
- AJAX大文件切割上传以及带进度条。
分块传输的原理就是利用HTML5新增的文件slice截取函数. 代码如下: html: <input id="f" type="file" name=&q ...
- JS面向对象逆向学习法,让难理解的统统一边去(1)~
对于面向对象我只能说呵呵了,为什么呢,因为没对象--- 既然你看到了这里,说明你有一定的基础,虽然本系列文章并不会过多的讲述基础部分,请做好心理准备. 本篇比较简单,这篇文章的意义是让你明白学习面向对 ...
- DOM动态脚本和动态样式
动态脚本 [定义] 在页面加载时不存在,但将来的某一时刻通过修改DOM动态添加的脚本. [方式] [1]插入外部文件方式 var script = document.createElement(&qu ...
- .NET 三层架构的简单规划
今天心血来潮简单看了下petshop4.0的源代码,他就是用三层架构来实现的.现在简单的做下总结. 首先我们先看下petshop的三层架构. 1 WEB 表示层 2 Model 业务实体 3 BLL ...
- vs切换当前编辑文件时自动定位目录树
在编辑区,切换当前编辑文件时(单击.cpp或.h文件选项卡),"解决方案资源管理器"目录树会自动定位当前编辑的文件,并以灰色标识,当一个解决方案中的工程数目数目很多,每个工程下面又 ...
- iOS_UIImage_给图片添加水印
github地址: https://github.com/mancongiOS/UIImage.git UIImage的Category UIImage+ImageWaterPrint.h #impo ...