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也占空间,变长字段为空字符串也是不占空间,所以设置成 ...
随机推荐
- php的几种运行模式CLI、CGI、FastCGI、mod_php
1.CLI:就是命令行,例如可以在控制台或者是shell中键入命令: php -f index.php 然后获取输出 2.CGI:以下是不同的说法与理解 公共网关接口”(Common Gateway ...
- javascript类型系统——Number数字类型
× 目录 [1]定义 [2]整数 [3]浮点数[4]科学记数[5]数值精度[6]数值范围[7]特殊数值[8]转成数值[9]实例方法 前面的话 javascript只有一个数字类型,它在内部被表示为64 ...
- javascript中数组和字符串的方法比较
× 目录 [1]可索引 [2]转换 [3]拼接[4]创建[5]位置 前面的话 字符串和数组有很多的相同之处,它们的方法众多,且相似度很高:但它们又有不同之处,字符串是不可变值,于是可以把其看作只读的数 ...
- PhoneGap介绍及简单部署
一.什么是PhoneGap: PhoneGap是一个自由开放源码的开发工具和框架,允许利用HTML + JavaScript + CSS的强大功能在多个手机平台上开发程序,开发出来的程序经过在各自的平 ...
- java session 详解
原网址:http://blog.sina.com.cn/s/blog_670b6d880101deff.html 一.术语session 在我的经验里,session这个词被滥用的程度大概仅次于tra ...
- Jetty集群配置Session存储到MySQL、MongoDB
在Web开发中,Session表示HTTP服务器与客户端(例如浏览器)的“会话”,每个客户端会有其对应的Session保存在服务器端,通常用来保存和客户端关联的一些信息,例如是否登录.购物车等. Se ...
- c#params ref out
params params 关键字可以指定在参数数目可变处采用参数的方法参数. 在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字. 示例: ...
- Unity3D 中的三个Update()方法
MonoBehaviour.Update 更新 当MonoBehaviour启用时,其Update在每一帧被调用. MonoBehaviour.FixedUpdate 固定更新 当Mo ...
- 优秀教程:使用 CSS3 动画实现的超炫的过渡特效
Codrops 最近分享了一些很酷的图片切换灵感.有三种不同的用例:小的图像幻灯片,大标题幻灯片以及使用透明背景的产品幻灯片.状态转换使用 CSS 动画完成,我们能够定义从任何方向进来的图片的行为. ...
- 在Android中实现service动态更新UI界面
之前曾介绍过Android的UI设计与后台线程交互,据Android API的介绍,service一般是在后台运行的,没有界面的.那么如何实现service动态更新UI界面呢?案例:通过service ...