![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
韩顺平.玩转oracle
oracle的学习笔记
Llllllainey
这个作者很懒,什么都没留下…
展开
-
韩顺平.玩转oracle - oracle视图
oracle视图视图是一个虚拟表,其内容由查询定义同真实的表一样,视图包含一系列带有名称的列和行数据但是,视图并不在数据库中以存储的数据值集形式存在行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成视图与表的区别表需要占用磁盘空间,视图不需要视图不能添加索引使用视图可以简化复杂查询视图有利于提高安全性(比如:不同用户查看不同视图)创建视图create ...原创 2020-03-24 20:57:09 · 113 阅读 · 0 评论 -
韩顺平.玩转oracle - 例外
例外处理例外的分类预定义例外用于处理常见的oracle错误非预定义例外用于处理预定义例外不能处理的例外自定义例外用于处理与oracle错误无关的其它情况例外传递declarev_name emp.ename%type;beginselect ename into v_name from emp where empno=&no;dbms_output.put_l...原创 2020-03-24 20:47:06 · 126 阅读 · 0 评论 -
韩顺平.玩转oracle - 编写分页过程
分页是任何一个网站(bbs、网上商城、blog)都会使用到的技术无返回值的存储过程书号书名出版社--上图为book表,编写一个过程,可以向book表添加书create procedure sp_pro7(spbookid in number,spbookname in varchar2,sppublishhouse in varchar2) isbegin...原创 2020-03-24 20:05:27 · 121 阅读 · 0 评论 -
韩顺平.玩转oracle - 顺序控制语句
goto语句用户跳转到特定标号区执行语句注意:由于使用goto语句会增加程序的复杂性,并使得应用程序可以读性变差,所以在做一般应用开发时,建议大家不要使用goto语句基本语法如下 goto lable 是已经定义号的标号名declarei int := 1; --定义i 为int类型beginloopdbms_output.put_line ('输出i='||i);if i = ...原创 2020-03-24 16:07:34 · 140 阅读 · 0 评论 -
韩顺平.玩转oracle - 循环语句
循环语句loop是pl/sql中最简单的循环语句以loop开头,以end loop结尾; 这种循环至少会被执行一次用户id用户名--现有如上的users表,请编写一个过程,可输入用户名,并循环添加10个用户到user表中;用户编号从1开始增加create procedure sp_pro5(spname varchar2) isv_num number :=1...原创 2020-03-24 15:48:55 · 161 阅读 · 0 评论 -
韩顺平.玩转oracle - 条件分支语句
控制结构介绍在任何计算机语言(C,java,pascal)都有各种控制语句(条件语句,循环结构,顺序控制结构)在pl/sql中也存在这样的控制结构条件分支语句pl/sql提供了三种条件分支语句if --thenif --then --elseif --then --elsif – else简单的条件判断if – then--编写一个过程,可以输入一个雇员名,如果该雇...原创 2020-03-24 15:34:34 · 196 阅读 · 0 评论 -
韩顺平.玩转oracle - pl/sql
pl/sqlprocedural language / sql 过程化语言是oracle在标准的sql语言上的扩展不仅允许嵌入sql语言,还可以定义变量和常量允许使用条件语句和循环语句,允许使用例外处理各种错误过程、函数、触发器是pl/sql编写过程、函数、触发器是在oracle中pl/sql是非常强大的数据库过程语言过程、函数可以在JAVA程序中调用学习必要性1⃣...原创 2020-03-23 21:25:15 · 222 阅读 · 0 评论 -
韩顺平.玩转oracle - 角色
相关权限的命令集合使用角色的主要目的就是为了简化权限的管理预定义角色oracle所提供的角色,每种角色都用于执行一些特定的管理任务connect角色具有一般应用开发人员需要的大部分权限具有的系统权限alter sessioncreate clustercreate database linkcreate sessioncreate tablecreate view...原创 2020-03-23 15:37:49 · 131 阅读 · 0 评论 -
韩顺平.玩转oracle - 管理权限和角色
权限指执行特性类型SQL命令或是访问其它方案对象的权利包括系统权限和对象权限两种系统权限介绍指执行特定类型SQL命令的权利用于控制用户可以执行的一个或是一组数据库操作常用的有:create session连接数据库create view建视图create public synonym建同义词create cluster建簇create ta...原创 2020-03-22 21:04:19 · 133 阅读 · 0 评论 -
韩顺平.玩转oracle - 索引
索引用于加速数据存取的数据对象创建索引单列索引基于单个列所建立的索引create index 索引名 on 表名(列名);复合索引基于两列或是多列的索引在一张表上可以有多个索引,但是要求列的组合必须不同create index emp_idx on emp(ename,job);create index emp_idx on emp(job,ename);使用原则在大表上...原创 2020-03-22 20:44:09 · 124 阅读 · 0 评论 -
韩顺平.玩转oracle - 约束
维护数据的完整性用于确保数据库数据遵从一定的商业和逻辑规则完整性通过三种方法实现:约束(易于维护)触发器应用程序(过程、函数)约束not null非空unique唯一(该列指定不能重复,但是可以为null)primary key主键(用于唯一的标示表行的数据,该列不能重复且不能为null)foreign key外键(用于定义主表和从表之间的关系)check用于强...原创 2020-03-22 16:52:31 · 110 阅读 · 0 评论 -
韩顺平.玩转oracle -表空间
介绍管理表空间和数据文件表空间是数据库的逻辑组成部分数据库是存放在表空间内表空间由一个或是多个数据文件组成数据库的逻辑结构表空间、段、区和块oracle ➡️区 ➡️段 ➡️ 表空间表空间用于从逻辑上组织数据库的数据数据库:由一个或多个表空间组成通过表空间可以达到以下作用:控制数据库占用的磁盘空间dba可以将不同数据类型部署到不同的位置,这样有利于提高i/0性能,同时有...原创 2020-03-22 16:04:29 · 331 阅读 · 0 评论 -
韩顺平.玩转oracle -数据字典 动态性能视图
数据字典数据字典oracle数据库中最重要的组成部分,它提供了数据库的一些系统信息它是只读表和视图的集合,所有者为sys用户数据字典记录了数据库的系统信息,通过查询数据字典可以取得以下系统信息:(1)对象定义情况(2)对象占用空间大小(3)列信息(4)约束信息……动态性能视图记载了例程启动后的相关活动信息当启用oracle server时,系统会建立动态性能视图当停止or...原创 2020-03-22 15:18:04 · 169 阅读 · 0 评论 -
韩顺平.玩转oracle - 数据库的逻辑备份与恢复
管理初始化数据用于设置实例或是数据库的特征显示初始化参数show parameter;如何修改参数如希望修改初始化的参数,可以到文件中去修改数据库(表)的逻辑备份与恢复逻辑备份使用工具export将数据对象的结构和数据导出到文件的过程逻辑恢复当数据库数据库对象被误操作而损坏后,使用工具import利用备份的文件把数据对象导入到数据库的过程物理备份可在数据库open的状...原创 2020-03-22 14:43:28 · 154 阅读 · 0 评论 -
韩顺平.玩转oracle -数据库管理员
数据库管理员dba职责安装和升级oracle数据库建库、表空间、表、视图、索引……制定并实施备份与恢复计划数据库权限管理、调优、故障排除对于高级dba要求能参与项目开发,会编写sql语句、存储过程、触发器、规则、约束、包管理数据库的用户主要是sys和system最重要的区别,存储的数据的重要性不同其次的区别,权限的不同sys(董事长)system(总经理)...原创 2020-03-21 21:56:04 · 244 阅读 · 0 评论 -
韩顺平.玩转oracle - 函数
字符函数lower(char)将字符串转化为小写的格式--将所有员工的名字按小写的方式显示select lower(ename) from emp;upper (char)将字符串转化为大写的格式length(char)返回字符串的长度--显示正好为5个字符的员工的姓名select * from empwhere length(ename)=5;substr(char,...原创 2020-03-21 21:26:22 · 162 阅读 · 0 评论 -
韩顺平.玩转oracle - 事务
事务处理事务用于保证数据的一致性,它由一组相关的DML(数据操作语言)语句组成该组的DML语句要么全部成功,要么全部失败事务和锁当执行事务操作时(DML语句),oracle会在被作用的表上加锁,防止其他用户改变表的结构提交事务使用commit语句可以提交事务当执行了commit语句后,会确认事务的变化、结束事务、删除保存点、释放锁当使用commit语句后结束事务后,其他会话将可以查...原创 2020-03-21 16:25:24 · 143 阅读 · 0 评论 -
韩顺平.玩转oracle - 分页查询、合并查询
分页查询分页查询有3种方式根据ROWID来分按分析函数来分按ROWNUM来分(主要讲这种方式)--按雇员的ID号升序取出6-10序号数据select * from(select a1.*,rownum rnfrom(select * from emp)a1 where rownum<=10)where rn>=6;-- rownum只能用一次,不能使用and,be...原创 2020-03-21 16:13:09 · 158 阅读 · 0 评论 -
韩顺平.玩转oracle - 子查询
子查询select ename,salfrom empwhere sal=(select max(sal)from emp);--显示工资高于平均工资的员工信息select * from empwhere sal > (select avg(sal)from emp);原创 2020-03-21 15:49:00 · 223 阅读 · 0 评论 -
韩顺平.玩转oracle - 复杂查询(聚合查询)
复杂查询(聚合查询)group by 和 having 子句group by 用于对查询的结果分组统计having子句用于限制分组显示结果--显示每个部门的平均工资和最高工资select avg(sal),max(sal),deptnofrom empgroup by deptno;--显示每个部门的每种岗位的平均工资和最低工资select avg(sal),min(sal...原创 2020-03-20 20:57:57 · 154 阅读 · 0 评论 -
韩顺平.玩转oracle - oracle管理工具的介绍
数据库的分类要用什么样的数据库?需要依照项目的规模而定负载量多大用户多少成本安全性小型数据库access,foxbase负载量小,用户在100人内,对安全性要求不高。比如留言板、信息系统中性数据库mysql,SQL server,informix负载量、日访问量5000~150000,成本在万元内。比如商务网站大型数据库sybase ,oracle ,db2负...原创 2020-03-19 20:32:59 · 123 阅读 · 0 评论 -
韩顺平.玩转oracle - oracle的用户管理
oracle的用户管理创建用户一般是具有dba(数据库管理员)的权限才能使用create user 用户名 identified by 密码;--密码需以字母开头给用户修改密码如果给自己修改密码可以直接使用password 用户名;-如果给别人修改密码则需具有dba权限或拥有alter user的系统权限alter user 用户名 identified by 新密码;删...原创 2020-03-20 14:24:53 · 178 阅读 · 0 评论 -
韩顺平.玩转oracle - oracle表的管理
oracle表的管理表名和列的命名规则必须以字母开头长度不能超过30字符不能使用oracle的保留字只能使用如下字符:A-Z , a-z,0-9,????,# 等oracle支持的数据类型字符型char定长,最大2000字符,查询速度快varchar、varchar2变长,最大4000字符,节省空间clob (character large object)字符型大对象,最...原创 2020-03-20 15:34:22 · 146 阅读 · 0 评论 -
韩顺平.玩转oracle - oracle表基本查询
oracle表基本查询查看表结构--查看dept表的表结构desc dept; 查询所有列--查询dept表的所有列select * from dept;查询指定列select ename,sal,job from emp;如何取消重复行select distinct deptno,job from dept;使用列的别名select ename "姓名", sal...原创 2020-03-20 15:58:44 · 117 阅读 · 0 评论