oracle数据库编程基础,Oracle数据库—— PL/SQL基础编程
发布日期:2022-02-10 01:26:36 浏览次数:10 分类:技术文章

本文共 4033 字,大约阅读时间需要 13 分钟。

一、涉及内容

1. 掌握PL/SQL程序块的结构,理解并熟悉各种变量的应用。

二、具体操作

(一)使用system用户登录SQL*PLUS,使用SQL语句创建用户:u_你的姓名首字母(例如:u_zs),密码为: t_你的学号后三位(例如:t_165)。并授予新用户连接数据库的权限,然后以新用户连接数据库。

1. 创建用户u_sxl

82684e7711a63f5dab5dc237f6cf2f95.png

2. 授予新用户u_sxl连接数据库的权限

ffbe21c721fd9bcbcd7ef35ca870ce45.png

3. 以新用户u_sxl连接数据库

befa772ebf8ac56ac0cc25af5821b3ba.png

(二)使用scott用户连接数据库,使用SQL语句创建表dep_你的学号后三位(例如:dep_165)

注意:创建表的同时要创建约束

列名    数据类型    列的说明

dno integer 系编号(主键约束)

dname   char(12)    系名(唯一约束)

1. 使用scott用户连接数据库(先修改一下密码)

636440aa1267e37d6c321f4801a6cbb5.png

2. 创建表dep_120

5917370067293fcee206c2e74865d38f.png

(三)使用SQL语句创建表stu_你的学号后三位(例如:stu_165)

注意:创建表的同时要创建约束

列名    数据类型    列的说明

sno integer 学号(主键约束)

sname   Varchar2(20)    姓名(非空约束)

sage    integer 年龄(check约束:在12~99岁之间)

sdep    integer 系编号(外键约束)

创建的表格如下所示:

c2164cb0af9f9abf243e5098d3dfea0b.png

(四) 使用scott方案下的emp表和dept表完成下列查询。(注意:每道题只能使用一条SQL语句实现)

1. 查询20号部门的所有员工的姓名、部门名称(要求:使用NATURAL JOIN)

b63f94ccb36e033de78d31c29af55278.png

2. 查询部门地点(LOC)、员工姓名。如果某部门没有员工,也要显示部门地点。(要求:使用左外连接)

6ab974dc7c09277cb310a4ef9021f4a5.png

3. 查询30号部门的员工奖金(COMM)的合计值。

e203a9591ed4c8ffbaf41b3577e7dfbc.png

4. 查询每个员工的姓名和他顶头上司(MGR)的姓名(要求:使用自身连接)

886ce0f0b8154793897275e62e06296d.png

5. 查询月薪低于2100元,并且所在部门编号是30的员工编号和月薪。(要求:使用INTERSECT)

e11736162927799698d84e6ee5d2e1ed.png

6. 查询平均工资最高的两个部门的部门编号。(要求:使用rownum伪列)

dfa923cc28fa6855f7405e7158fd81c4.png

7. 查询与ALLEN的所在部门和雇用年份相同的所有员工的姓名。(要求:使用多列子查询)

42308a51e6b0096483b13dc9aeb830ca.png

8. 按工作岗位(job)分组,查询每种岗位的员工个数

08aba965afeb17103208ffad74ed5f75.png

9. 按工作岗位(job)分组,查询每种岗位的薪水的最低值。

7514508682dc928eb20f954f976e0e56.png

10. 将“SALES”部门的员工薪水增加15% (注意:需要使用两张表)

46f351a145ded1aad69837ec129ae6cd.png

11. 查询平均月薪高于2800元的部门名称、员工姓名、部门平均月薪。

45ec15428198ffdd1c651f478571fda3.png

12. 从emp表中删除 所在部门位于“BOSTON”的员工的信息。(注意:需要使用两张表)

3b2ee67df19566753b22f87b8fc9d919.png

(五)编写PL/SQL程序块,每道题目使用一个程序块实现。

1、创建并执行一个PL/SQL程序块,通过替代变量由键盘输入两个数值x和y,用第一个数x乘以第二个数y再除以10取整(小数四舍五入),将结果存入变量:v_你的姓名首字母(例如:v_zs),然后输出到屏幕上。

a50d007f6af5cd624da531b58c60ae6f.png

2、创建并执行一个PL/SQL程序块,查询scott方案的emp表中的最高薪水,将其存入变量:v_你的姓名首字母(例如:v_zs)中,然后在屏幕上显示。

f300135355f5f9cb953061bb8631a2e5.png

3、创建并执行一个PL/SQL程序块,计算scott方案中emp表的某个雇员的年薪,雇员的编号通过替代变量由键盘输入,年薪等于月薪sal乘以12个月再加上奖金comm,使用NVL函数处理空值。将计算出的年薪存入变量:v_你的姓名首字母(例如:v_zs)中,然后将结果输出到屏幕上。

394486cc873412dc7aaaa3b1048c425e.png

4、创建并执行一个PL/SQL程序块,向dept表中添加一行数据,用替代变量输入部门的编号和名称,部门位置为NULL。

58b8e9bb3d58836c350b5dc9d7c04ebe.png

5、创建并执行一个PL/SQL程序块,更新部门位置的值,用替代变量输入部门的编号和新的部门位置。

d1101357a63276d37bdf434970323b5a.png

6、创建并执行一个PL/SQL程序块,删除第4题添加的部门,用替代变量输入部门的编号。

748980690081bc45d02c5fffa0b6a08b.png

Oracle数据库—— PL/SQL进阶编程

一.涉及内容 1.掌握PL/SQL程序块的结构 2.理解并熟练掌握各种变量的应用. 二.具体操作 1.创建一个表messages,该表只有一个字段results 类型是number(2),编写一个块, ...

oracle PL/SQL基础编程

PL/SQL(Procedural Language/SQL)是oracle中引入的一种过程化编程语言 PLS-00103:出现符号"declare"在需要下列之一时 符号&quo ...

PL/SQL 基础编程

PL/Sql 编程 PL/Sql结构 [declare] --声明变量 begin --执行部分 [exception] ---异常处理部分 end PL/Sql  基本数据类型 数值类型 1. nu ...

Oracle数据库PL/SQL那点事情---修改过电脑的用户名

在安装Oracle数据库的PL/SQL工具时候,电脑名称是重装系统后自动生成的用户名名称,作为程序员,有很强的强迫症,就想利用自己的英文名称作为自己电脑的名称,所以就修改了电脑的名称:结果PL/SQL ...

Oracle数据库之SQL基础(一)

主要内容:用户与表空间:表与约束:查询语句. 一.概述 Oracle安装:访问官网,下载 二.用户与表空间 在安装Oracle时在开始菜单里可以用sql puls登录oracle. ★1.系统用户 s ...

Oracle Day07 PL/SQL基础

1.基本格式 set serveroutput on declare -- 申明部分 name ); begin -- 执行的sql语句 ; dbms_output.put_line(name); e ...

Oracle数据库PL/SQL Developer查询结果显示问号乱码的解决方法

PL SQL Developer,查询结果中的中文变成了一堆问号,SQL语句中的中文被提示invalid character,不能识别. 解决方法: 执行,select userenv('langua ...

Oracle数据库之SQL基础和分支循环

一.SQL基础语言 DECLARE --声明 a ); --变量或对象 BEGIN a:='小明';-- := 表示给一个变量赋值 dbms_output.put_line(a); --输出用 dbm ...

Oracle数据库之SQL基础(二)

一.约束 ❤ 1.约束概述 约束作用: (1)定义规则 (2)确保完整性:包括数据的精确性.可靠性.以确保数据不会出错,或者尽量减少出错. 约束的类型: (1)非空约束 (2)主键约束 (3)外键约束 ...

随机推荐

jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)

今天学习jQuery,看到nth-child(even)用法,特意找了下这个选择器的用法,在CSS3标准中,用法很强大. 对此,我把CSS3标准中nth-child()用法大致介绍下: CSS3伪类选 ...

jstl

今日内容 l JSTL标签库 l EL函数 l 自定义标签库开发 l JSP模式和案例(*****) 1.1 上次课内容总结 JSP技术: * JSP:Java Server Pages * JSP运 ...

Android技术积累:开发规范

转载自Keegan小钢 http://keeganlee.me/post/android/20150709 书写规范 1. 编码方式统一用UTF-8. Android Studio默认已是UTF-8, ...

iOS UITextField的returnkey点击事件

关于隐藏软键盘,网上的办法良莠不齐,大多是通过实现UITextFieldDelegate来隐藏软键盘,该方法代码较多,且在文本框很多的时不好处理.我经过搜索与摸索,找到了最佳的处理办法.(引用的) ...

Redis__WindowsServer主从服务部署及调用实例

本文转自:http://www.cnblogs.com/gossip/p/4898653.html 一.先谈谈单个Redis服务的安装         使用的redis是2.8.17版本,从官网下载解 ...

EntityFreamWork和Mvc 精品知识点

定义了DbRepository:IRepository ,SimpleDbContext继承了DbContext, UnitOfWork:I ...

Linux中的cron计划任务配置方法(详细)

cron来源于希腊单词chronos(意为“时间”),指Linux系统下一个自动执行指定任务的程序(计划任务) 1. crontab命令选项 #crontab -u

zoj p3780 Paint the Grid Again

地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5267 题意:Leo 有一个N*N 的格子,他又有一把魔法刷,这个刷子能把 ...

百度JS模板引擎 baiduTemplate 1.0.6 版

A.baiduTemplate 简介 0.baiduTemplate希望创造一个用户觉得“简单好用”的JS模板引擎 注:等不及可以直接点左侧导航中的”C.使用举例“,demo即刻试用. 1.应用场景: ...

Nginx Location 匹配

location匹配命令 ~      #波浪线表示执行一个正则匹配,区分大小写~*    #表示执行一个正则匹配,不区分大小写^~    #^~表示普通字符匹配,如果该选项匹配,只匹配该选项,不匹配 ...

转载地址:https://blog.csdn.net/weixin_33595317/article/details/116539647 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:php怎么计算腾讯接口签名,PHP腾讯云人脸核身 接口对接和签名设置
下一篇:linux命令 chomd 333,菜鸟学Linux命令:chmod命令和数字文件权限

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2024年04月16日 08时44分58秒