随笔分类 -  Oracle

摘要:1. rowid和rownum都是虚列 2. rowid是物理地址,用于定位oracle中具体数据的物理存储位置 3. rownum则是sql的输出结果排序,从下面的例子可以看出其中的区别。 rowid 用于定位数据表中某条数据的位置,是唯一的、也不会改变 rownum 表示查询某条记录在整个结果集 阅读全文
posted @ 2019-04-11 22:33 陆伟 阅读(201) 评论(0) 推荐(0)
摘要:Oracle的分页: 使用到的是rowunm 这是一个标识。给每列前面加上序号。 MySQL分页: 但是MySQL有Limt 关键字作用是查出从第几到第几的数据 查出第一条数据。 查出前两行的数据,从0到2的数据 查出第二行的数据。从1到2 . 阅读全文
posted @ 2019-04-11 21:17 陆伟 阅读(860) 评论(0) 推荐(0)
摘要:Oracle优化:物理优化和逻辑优化。物理优化:1):Oracle的运行环境。2):合理的使用优化器。3):合理配置Oracle实例参数4):建立合适的索引(减少IO)5):将索引数据和表数据分开在不同的表空间上。(降低IO冲突)6):建立表分区,将数据分别存储在不同的分区上(以空间换取时间,减少I 阅读全文
posted @ 2019-04-11 21:12 陆伟 阅读(306) 评论(0) 推荐(0)
摘要:with as优点 增加了sql的易读性,如果构造了多个子查询,结构会更清晰; 更重要的是:“一次分析,多次使用”,这也是为什么会提供性能的地方,达到了“少读”的目标 用法:给查询的语句起个别名 e。然后查询的时候直接查询e就行了 阅读全文
posted @ 2017-11-02 11:01 陆伟 阅读(892) 评论(0) 推荐(0)
摘要:in 是参数的默认模式,这种模式就是在程序运行的时候已经具有值,在程序体中值不会改变。 out模式定义的参数只能在过程体内部赋值,表示该参数可以将某个值传递回调用他的过程 in out 表示高参数可以向该过程中传递值,也可以将某个值传出去 一:在函数中: 调用: 调用: p_two明明赋予了值。没有 阅读全文
posted @ 2017-11-01 15:12 陆伟 阅读(20200) 评论(0) 推荐(0)
摘要:4.7 ref游标(loop循环) /*** 怎么使用 REF游标 ? ①声明REF 游标类型,确定REF 游标类型; ⑴强类型REF游标:指定retrun type,REF 游标变量的类型必须和return type一致。 语法:Type REF游标名 IS Ref Cursor Return 结 阅读全文
posted @ 2017-10-27 16:09 陆伟 阅读(627) 评论(0) 推荐(0)
摘要:1:创建包:把过程。方法都可以放到这个里面 IN表示向存储过程传递参数,OUT表示从存储过程返回参数,而IN OUT 表示传递参数和返回参数; 2:创建包体 阅读全文
posted @ 2017-10-27 14:24 陆伟 阅读(1848) 评论(0) 推荐(0)
摘要:实现步骤: 1.创建一个测试表 create table test(dTime date); 2.创建一个存储过程 create or replace procedure p_test as begin insert into test values(sysdate); end; 3.创建执行计划:每小时运行一次存储过程 Declare i Integ... 阅读全文
posted @ 2017-10-25 16:07 陆伟 阅读(279) 评论(0) 推荐(0)
摘要:Oracle 中的序列我们一般用来生成流水号,所以需要进行重置(如每天凌晨重置一次),我们虽然可以通过重新编译的方式重置序列,可是这种方法会有弊端,比如导致与该序列相关的存储过程或函数失效等等,需要重新编译;于是就需要一种不编译也可以重置序列的方法—— 这种方式,不用删除,利用步长参数,先查出seq 阅读全文
posted @ 2017-10-25 08:19 陆伟 阅读(4529) 评论(0) 推荐(0)
摘要:员工表查询: 1:查询每个部门的工资按工资排序; 2:分组的时候 PARTITION BY 后面可以跟多个条件。 3:求每个部门工资最高的信息 小知识:用rank()不用ROW_NUMBER()的原因是:因为如果同班有两个并列第一,row_number()只返回一个结果 2.rank()和dense 阅读全文
posted @ 2017-09-25 13:26 陆伟 阅读(218) 评论(0) 推荐(0)
摘要:插入数据: select a.ENAME from emp a where exists(select * from dept b where b.deptno=a.deptno and b.deptno=10); 阅读全文
posted @ 2017-09-19 16:53 陆伟 阅读(1772) 评论(0) 推荐(0)
摘要:1:创建表:正常创建 2:子查询创建表 where 1=2.不把a表的数据插入到fuzi_a中。where1=1.新表和旧表有相同的数据。 创建表后对表进行操作: 1:添加列: 2:删除列: 3:修改列 修改前: 修改后: 4:将列设置为未使用的 5:重命名列 6:将表设置为只读 阅读全文
posted @ 2017-08-10 09:30 陆伟 阅读(147) 评论(0) 推荐(0)
摘要:v$parameter 显示当前在运行的实例中生效的参数值。 v$spparameter 显示磁盘上spfile中存储的值。 通常是相同的。 select p.NAME,p.VALUE,p.ISDEFAULT from v$parameter p where p.NAME='processes' 修 阅读全文
posted @ 2017-08-08 20:47 陆伟 阅读(268) 评论(0) 推荐(0)
摘要:要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆。一般我们常用SYS用户以SYSDBA连接来启动和关闭数据库。下面介绍Oracle数据库几种不同的数据库启动和关闭方式之间的区别以及它们各自不同的功能。1 数据库的启动(STARTUP) 在 阅读全文
posted @ 2017-08-08 16:58 陆伟 阅读(4197) 评论(0) 推荐(0)
摘要:1区:PGA(私有不共享内存区域)当请求的指令发出的时候,先在1区中进行预处理。 作用:1:保存用户的连接信息。如:会话属性,绑定变量。 2:保存用户的权限等重要信息。当用户和数据库进行交互的时候,会查出用户的权限,然后把这个用户的权限的信息保存到PGA中。 3:排序。发出的指令需要排序的时候,先在 阅读全文
posted @ 2017-05-08 10:41 陆伟 阅读(139) 评论(0) 推荐(0)
摘要:问题: 1:通常说Oracle数据库是什么? 2:如何理解Oracle实例? 3:Oracle实例由哪些部分组成,它们之间的作用是什么? 4:如何理解Oracle的物理结构? 5:Oracle的物理结构由哪些部分组成,它们之间的作用是什么? 6:如何理解Oracle的逻辑结构? 7:Oracle的逻 阅读全文
posted @ 2017-05-04 11:20 陆伟 阅读(222) 评论(0) 推荐(0)
摘要:union:求并集,公共部分只包含一个 ABC 和AB都没有显示出来 2:union all 相同的数据会包含两个 3:交集 intersect 既包含A又包含B 4:求差集 A集合中的数据B集合中也有的给删除掉,只保留B中没有的 A集合: B集合: 只保留AAA,AC 阅读全文
posted @ 2017-04-20 16:48 陆伟 阅读(138) 评论(0) 推荐(0)
摘要:该函数共有两种作用:第一种,即大家都比较熟悉的去除空格。例子:--TRIM去除指定字符的前后空格SQL> SELECT TRIM(' dd df ') FROM dual;TRIM('DDDF') dd df--LTRIM去除指定字符的前面空格SQL> SELECT LTRIM(' dd df ') 阅读全文
posted @ 2017-04-05 10:27 陆伟 阅读(9460) 评论(0) 推荐(0)
摘要:语法: SELECT ... FOR UPDATE [OF column_list][WAIT n|NOWAIT][SKIP LOCKED]; 其中OF 子句用于指定即将更新的列,即锁定行上的特定列; WAIT 子句指定等待其他用户释放锁的秒数,防止无限期的等待。 使用“FOR UPDATE WAI 阅读全文
posted @ 2017-03-09 09:11 陆伟 阅读(136) 评论(0) 推荐(0)
摘要:(1)包是一种数据库对象,相当于一个容器。将逻辑上相关的过程、函数、变量、常量和游标组合成一个更大的单位。用户可以从其他 PL/SQL 块中对其进行引用 (2)包类似于C++和JAVA语言中的类,其中变量相当于类中的成员变量,过程和函数相当于类方法。把相关的模块归类成为包,可使开发人员利用面向对象的 阅读全文
posted @ 2017-02-27 16:07 陆伟 阅读(387) 评论(0) 推荐(0)