ORACLE企业面试编程题

上传人:zhu****ng 文档编号:103462435 上传时间:2022-06-08 格式:DOC 页数:7 大小:46.01KB
收藏 版权申诉 举报 下载
ORACLE企业面试编程题_第1页
第1页 / 共7页
ORACLE企业面试编程题_第2页
第2页 / 共7页
ORACLE企业面试编程题_第3页
第3页 / 共7页
资源描述:

《ORACLE企业面试编程题》由会员分享,可在线阅读,更多相关《ORACLE企业面试编程题(7页珍藏版)》请在装配图网上搜索。

1、1、 用SQL语句创建上表(create table 方案名称.表名称 (字段1 数据类型 1, )2、写出一个匿名的SQL程序块,完成以下任务:向表中插入3000条记录,在SALARY字段中有500条记录的值为1000,500条记录的值为1200,1000条记录的值为1500,1000条记录的值为1800 ID字段的值来自序列XL其他字段的值任意。3、创建一个存储过程,应用上式所创建的函数,修改id在800到1200的记录的salary值。4、用SQL语句创建一个视图,这个视图用来显示ID1000的记录。5、创建一个SYS用户中的函数fn1,函数的作用为:将指定ID号的记录中的SALARY字

2、段的值乘以1.05。6、建立一个存储过程,删除表中ID在特定范围内的记录(如:id20,id1000的记录。8、假设已经创建好序列system.xl,写出一个匿名的PL/SQL程序块,完成一次向数据表中插入3000条记录,其中除ID字段取值不同外,其他字段取相同值。9、创建一个system方案中的函数fn1,函数的作用为:将指定ID号的记录中的salary字段值乘以1.05。10、写出一个存储过程,这个存储过程的作用是修改特定ID编号的记录,将该记录的SALARY字段的值加上500。 11现有学生表stuInfo,班级表classInfo,表结构如下:stuInfo表:sid学号 int主键

3、自增sname姓名 Varchar(30) 非空sex性别 char(2) 只能插入0或1或空(“0”代表男,“1”代表女)birthday生日 dateTime 默认为系统时间age入学年龄 int可为空smoney缴费 int可为空cid班级编号 int非空 外键classInfo表:班级编号cid int主键 自增班级名称cname varchar(30) 非空(1)、建立一个存储过程用来接收一个学生编号,返回他的年龄、性别(显示男或女,空值为男)和他所在班级的人数并作为传出参数传出。(2)、建立一个存储过程用来接收一个班级编号,找出其中的两位最老的学生的姓名,并打印。若没有找到该班级编

4、号信息,则打印”班级信息错误”,若找到班级编号,但该班级没有学生,则打印“该班级没有学生”。(3)用存储过程实现对stuInfo表的分页显示。12物资信息管理系统据库如下: 数据库名:物资信息管理Materials管理员表 User_Manager列名数据类型长度描述User_IDint用户ID(主键)User_Namevarchar50登陆用户名,唯一User_Passvarchar10登陆密码User_Datedatetime账户创建时间(默认为当前系统时间),添加检查约束使创建账户的时间不能晚于当前的时间领用科室表Department_Manager列名数据类型长度描述Departmen

5、t_IDint领用科室ID(主键)Department_NameVarchar20领用科室名称Department_Stateint 缺省1(1:正常,0:销户)Department_Datedatetime领用科室注册时间(默认当前系统时间),限制角色的创建时间不能晚于当前的时间领用记录表Consuming_Manager列名数据类型长度描述Co_IDint主键User_IDint外键-User_ManagerDepartment_IDint外键-Department_ManagerType_IdInt 缺省为1,(1:打印纸2:签字笔)Co_Quentityfloat领用数量,缺省0Co_

6、Datedatetime领用时间(默认当前系统时间),限制时间不能晚于当前的时间物品库存表Store_Manager列名数据类型长度描述St_IDint自增IDType_IdInt 缺省为1,(1:打印纸2:签字笔)St_QuentityFloat物品库存数量(1).查询领用记录中,编号为1的记录对应的系统管理员的姓名,领用科室姓名,领用科室注册时间,领用日期,领用产品种类(为Type_Id为1,则将此处的显示为“打印纸”,否则显示为“签字笔”), 领用产品数量 提示:使用 case when (2).创建存储过程验证登陆系统管理员的用户与密码是否正确,若用户名不存在返回-1,若用户名存在但是

7、密码错误返回0,若验证成功则返回用户的User_ID。(3)创建存储过程-完成添加一条领用记录。记录添加过程中必须完成对领用库存表的添加或更新操作,若数据插入中间出现问题,请使用事务回滚 写出测试数据 (4)创建触发器,删除领用科室表中的一条数据,必须先删除领用记录表中所有对应于该领用科室的所有数据,然后才能删除领用科室。 写出测试语句13表className中有如下分类:classIDclassName1 衣服2 裤子5 帽子10 鞋子表productInfo有如下记录:productIDproductNameparentIDclickNum1男士衣服 1 90 -衣服类别中这条记录的点击率

8、最高2 女士衣服 1 803 男士裤子 2 704 女士裤子 2 90-裤子类别中这条记录点击率最高5 男士帽子 5 156 女士帽子 5 30-帽子类别中这条点击率最高7 男士鞋子 10 65-鞋子类别中这条点击率最高8 女士鞋子 10 529 女士鞋子1 10 54使用存储过程实现:要求分别把衣服,裤子,帽子,鞋子这些类别中点击率最高的一条记录找出来,然后再降序排列,结果应如下:productID productNameclickNum1 男士衣服 904 女士裤子 907 男士鞋子 65 6 女士帽子 3014程序员工资表:ProWage字段名称数据类型说明IDint自动编号,主键PNa

9、meChar(10)程序员姓名Wageint工资创建一个存储过程,对程序员的工资进行分析,月薪1500到10000不等,如果有百分之五十的人薪水不到2000元,给所有人加薪,每次加100,再进行分析,直到有一半以上的人大于2000元为止,存储过程执行完后,最终加了多少钱? 例如:如果有百分之五十的人薪水不到2000,给所有人加薪,每次加100元,直到有一半以上的人工资大于2000元,调用存储过程后的结果如图:请编写PL/SQL来实现如下功能:1)创建存储过程,查询是否有一半程序员的工资在2200、3000、3500、4000、5000或6000元之上,如果不到分别每次给每个程序员加薪100元,

10、至之一半程序员的工资达到2200,3000,3500,4000,5000或6000元。2)创建存储过程,查询程序员平均工资在4500元,如果不到则每个程序员每次加200元,至到所有程序员平均工资达到4500元。15某cc表数据如下:c1 c2-1 西1 安1 的2 天2 气3 好转换为1 西安的2 天气3 好要求:不能改变表结构及数据内容,仅在最后通过SELECT显示出这个查询结果16. 用存储过程实现:对所有员工,如果该员工职位是MANAGER,并且在DALLAS工作那么就给他薪金加15;如果该员工职位是CLERK,并且在NEW YORK工作那么就给他薪金扣除5;其他情况不作处理17编写一个

11、PL/SQL程序块,对直接上级是BLAKE的所有员工,按照参加工作的时间加薪: 81年6月以前的加薪1081年6月以后的加薪519用存储过程实现:根据员工在各自部门中的工资高低排出在部门中的名次(允许并列). 20编写一个触发器实现如下功能: 对修改职工薪金的操作进行合法性检查: a) 修改后的薪金要大于修改前的薪金 b) 工资增量不能超过原工资的10% c) 目前没有单位的职工不能涨工资21编写一个PL/SQL程序块,对名字以A或S开始的所有雇员按他们的基本薪水的10%加薪。 22编写一PL/SQL,对所有的销售员(SALESMAN)增加佣金500. 23编写一PL/SQL,以提升两个资格最

12、老的职员为高级职员。(工作时间越长,优先级越高) 24编写一PL/SQL,对所有雇员按他们基本薪水的10%加薪,如果所增加的薪水大于5000,则取消加薪。25编写一个给特殊雇员加薪10%的过程,这之后,检查如果已经雇佣该雇员超过60个月,则给他额外加薪3000. 26编写一个函数以检查所指定雇员的薪水是否有效范围内。不同职位的薪水范围为:Designation Raise Clerk 1500-2500 Salesman 2501-3500 Analyst 3501-4500 Others 4501 and above. 如果薪水在此范围内,则显示消息Salary is OK,否则,更新薪水为该范围内的最低值。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!