数据库操作与PL/SQL语法学习笔记
需积分: 9 195 浏览量
更新于2024-09-13
收藏 29KB TXT 举报
"这篇文档是关于数据库学习的笔记,涵盖了SQL SERVER和ORACLE数据库的基础知识,包括权限管理、PL/SQL编程以及DML操作。"
在数据库领域,SQL(Structured Query Language)是用于管理和处理关系数据库的标准语言。文档中提到了SQL的一些基本操作,如权限管理、数据查询、数据插入、更新和删除。
1. 权限管理:
- `REVOKE SELECT ON scott.emp FROM scott;` 这条语句是撤销用户scott对scott.emp表的SELECT权限。
- `GRANT EXECUTE ON p_test TO scott;` 这行代码则是授予scott执行名为p_test存储过程的权限。
2. PL/SQL编程:
- PL/SQL是Oracle数据库中的过程式语言,用于编写数据库块。示例展示了声明记录类型(emp_record_type),并定义了一个记录变量(emp_record)来存储查询结果。
- `DECLARE` 开始一个PL/SQL块,`TYPE`用于定义自定义数据类型,如emp_record_type,它包含emp表中的ename、sal和job字段。
- `BEGIN...END;` 包含了SQL查询和输出,通过`DBMS_OUTPUT.PUT_LINE`将结果打印到控制台。
3. DML(Data Manipulation Language)操作:
- `INSERT INTO emp(hiredate) VALUES(TO_DATE('1980-10-2', 'yyyy-mm-dd'));` 插入一条新的雇员记录,设置hiredate为指定日期。
- `INSERT INTO emp SELECT * FROM emp1;` 复制emp1表的所有记录到emp表。
- `UPDATE emp SET sal=sal*1.1, comm=comm*1.1 WHERE deptno=20;` 更新部门编号为20的员工薪水和佣金,增加10%。
- `UPDATE emp SET (job, sal, comm) = (SELECT job, sal, comm FROM emp WHERE ename='SMITIH') WHERE ename='SCOTT';` 将SCOTT的职位、薪水和佣金设置为与SMITIH相同的值。
- `DELETE FROM emp WHERE ename LIKE '__a%';` 删除名字以'a'开头且第二个字符为空格的员工记录。
- `TRUNCATE TABLE emp;` 清空emp表的所有数据,但不记录在事务日志中,比DELETE更快。
4. 数据分析:
- 使用`GROUP BY`进行分组统计,`ROLLUP`和`CUBE`提供了更复杂的分组选项。`GROUP BY ROLLUP(deptno, job)`生成所有可能的deptno和job的子集,包括总的汇总。`GROUP BY CUBE(deptno, job)`则包含所有可能的子集和单个汇总。
- `AVG(sal)`计算平均薪水,`ROUND(avg(sal), 2)`将平均薪水四舍五入到两位小数。
这些笔记内容对于初学者来说非常有用,涵盖了数据库基础操作的各个方面,是理解SQL和PL/SQL编程的良好起点。在实际工作中,掌握这些技能可以有效地管理数据库,执行查询,以及进行数据维护和分析。
2015-10-11 上传
2011-03-17 上传
2018-01-17 上传
2012-11-09 上传
2015-04-23 上传
canyuewp
- 粉丝: 0
- 资源: 1
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录