随笔分类 -  oracle学习笔记

上一页 1 2 3 4 5 下一页
oracle外部表的使用
摘要:2010年12月28日 oracle外部表外部表的含义: 外部表是指不在数据库中的表,如操作系统上的一个按一定格式分割的文本文件或者其他类型的表。这个外部表对于Oracle数据库来说,就好像是一张视图, 在数据库中可以像视图一样进行查询等操作。这个视图允许用户在外部数据上运行任何的SQL语句,而不需要先将外部表中的数据装载进数据库中。不过需要注意是,外部数据表都是只读的,不能够更改。外部表使用限制:(来源于http://www.examda.com/oracle/zonghe/20101031/141746967.html) 需要先建立目录对象:在创建外部表之前先要创建一个这个外部表要指向的文 阅读全文
posted @ 2010-12-28 11:41 蓝紫 阅读(14923) 评论(0) 推荐(0) 编辑
profile文件、密码文件、游标共享的介绍
摘要:2010年12月24日 13:18:38 profile文件的介绍:1、设置一个用户只能有一个会话SQL> create profile one_session limit sessions_per_user 1;SQL> alter user lttfm profile one_session;SQL> alter system set resource_limit=true; --限制生效的前提(resource_limit=true) 做了以上设置后,若lttfm用户已经登陆,再次用lttfm登陆会提示错误(ora-02391:exceeded simultaneous 阅读全文
posted @ 2010-12-24 13:31 蓝紫 阅读(1157) 评论(0) 推荐(0) 编辑
with与树查询的使用
摘要:2010年12月23日 12:55:46 with 查询的使用with 查询的作用:就是把一大堆重复用到的SQL语句放在with as 里面,取一个别名,后面的查询就可以用它这样对于大批量的SQL语句起到一个优化的作用create table t2(id int); create table t3(id int); insert into t2 values(1); insert into t2 values(2); insert into t3 values(3); commit; with sql1 as (select * from t2), sql2 as (select * from 阅读全文
posted @ 2010-12-23 12:58 蓝紫 阅读(1104) 评论(0) 推荐(0) 编辑
FLASHBACK介绍
摘要:在介绍flashback之前先介绍下undo_retention相关参数undo_retention:表示undo数据的过期时间。系统默认这个时间设置为900即15分钟。但要注意,保证undo数据在这个时间内有效的前提是undo表空间有 足够的空间存储。如果undo空间已满且又有新事务执行则会覆盖原来的undo数据而不管undo数据是否过期。不过,如果undo空间足够, 尽管undo数据已经 过了指定的时间,只要不被覆盖,该undo数据还是存在,因此也还是能够被执行flashback闪回(但是必须在增删改 表记录之前先执行alter table table_name enable... 阅读全文
posted @ 2010-12-22 13:28 蓝紫 阅读(3709) 评论(0) 推荐(0) 编辑
PLS_INTEGER类型与timestamp类型、date、及时间函数
摘要:2010年12月2日一、 PLS_INTEGER类型 今天看到了这个 PLS_INTEGER,觉得生疏,网上搜了下,原来这个类型的好处多多啊。因此将这些转了过来,收藏了。PLS_INTEGER可以存储一个有符号的整形值,其精度范围和BINARY_INTEGER一样,是:-2^31~2^31。PLS_INTEGER和NUMBER比较起来,其优点是:1).占有较少的存储空间;2).可以直接进行算术运算(在NUMBER上不能直接进行算术运算,如果要计算,NUMBER必须先被转换成二进制)。所以在进行算术的时候PLS_INTEGER比NUMBER和BINARY_INTEGER快一些。PLS_INTEG 阅读全文
posted @ 2010-12-02 11:56 蓝紫 阅读(2551) 评论(0) 推荐(0) 编辑
物化视图
摘要:2010年11月16日 11:25:37物化视图create materialized view m_test_view refresh force BUILD IMMEDIATE --创建物化视图的时候就生成数据(默认就是BUILD IMMEDIATE) --(BUILD DEFERRED) 则在创建时不生成数据,以后根据需要在生成数据 on commit --视图数据基于基表提交时更新 --(on demand) 根据自己需要刷新数据(可以根据刷新包手动刷新) as select * from gs_gcomm_table; --删除物化视图drop materialized vi... 阅读全文
posted @ 2010-11-16 11:26 蓝紫 阅读(10368) 评论(0) 推荐(0) 编辑
OVER(PARTITION BY)函数用法
摘要:2010年10月26日OVER(PARTITION BY)函数介绍开窗函数 Oracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是:对于每个组返回多行,而聚合函数对于每个组只返回一行。 开窗函数指定了分析函数工作的数据窗口大小,这个数据窗口大小可能会随着行的变化而变化,举例如下:1:over后的写法: over(order by salary) 按照salary排序进行累计,order by是个默认的开窗函数 over(partition by deptno)按照部门分区 over(partition by deptno order by ... 阅读全文
posted @ 2010-10-26 11:56 蓝紫 阅读(268380) 评论(6) 推荐(27) 编辑
触发器的创建与使用
摘要:触发器的创建与使用编写触发器执行代码注意事项:1)触发器代码的大小不能超过32K。如果确实需要使用大量代码建立触发器,应该首先建立存储过程,然后在触发器中使用call语句调用存储过程。2)触发器只能包含SELECT,INSERT,UPDATE,DELETE语句,而不能包含DDL语句(CREATE,ALTER,DROP)和事务控制性语句(COMMIT,ROLLBACK和SAVEPOINT)。 语句触发器: 1、建立before语句触发器CREATE OR REPLACE TRIGGER tr_sec_emp BEFORE INSERT OR UPDATE OR DELETE ON empBEGI 阅读全文
posted @ 2010-09-15 15:32 蓝紫 阅读(4477) 评论(0) 推荐(0) 编辑
oracle 包纯度级别
摘要:oracle 包纯度级别 PRAGMA RESTRICT_REFERENCES(),这个PRAGMA比较复杂, 总的来说,它是一个程序辅助检验码,检查子程序的纯度(PURITY),帮助检验子程序是否有违反规则的地方。一般用在函数上,但当函数调用过程时,也要作相应的设置检查。这是为了避免当在DML语句上调用函数时正常执行不至于产生错误。 语法,PRAGMA RESTRICT_REFERENCES(function_name | default , )RNDS, WNDS, RNPS, WNPS) | , TRUST); RNDS,WNDS,RNPS,WNPS可以同时指定。但当TRUST指定是,其 阅读全文
posted @ 2010-09-15 14:03 蓝紫 阅读(1193) 评论(0) 推荐(0) 编辑
Oracle参数文件
摘要:Oracle参数一、oracle pfile/spfile区别 pfile 默认的名称为“init+例程名.ora”文件路径:E:\oracle\product\10.2.0\db_1\dbs,这是一个文本文件,可以用任何文本编辑工具打开。 spfile 默认的名称为“spfile+例程名.ora”文件路径:E:\oracle\product\10.2.0\db_1\dbs以二进制文本形式存在,不能用vi编辑器对其中参数进行修改。两个文件可以用命令 CREATE PFILE FROM SPFILE或CREATE SPFILE FROM PFILE来互相创建区别:1、启动次序 SPfile优先于 阅读全文
posted @ 2010-09-15 11:59 蓝紫 阅读(9469) 评论(0) 推荐(0) 编辑
管理子程序
摘要:管理子程序1、列出当前用户的子程序 数据字典视图USER_OBJECTS用于显示当前用户所包含的所有对象。它不仅可以列出用户的表、视图、索引等,也可以列出用户的过程、函数和包。如下语句所示:SELECT * FROM USER_OBJECTS WHERE OBJECT_TYPE IN ('PROCEDURE','FUNCTION');2、列出子程序源代码数据字典视图USER_SOURCE用于列出子程序的源代码。SELECT TEXT FROM USER_SOURCE WHERE NAME='PKG_N9_RPT';3、列出子程序编译错误 确定错误 阅读全文
posted @ 2010-09-14 12:50 蓝紫 阅读(358) 评论(0) 推荐(0) 编辑
批量绑定
摘要:2010年9月14日 12:46:37 批量绑定 批量绑定是Oracle9i新增加的特征,是指执行单次sql操作能传递所有集合元素的数据。当在select,insert,update,delete语句上处理批量数据时,通过批量绑定,可以极大地加快数据处理速度,提高应用程序的性能。 批量绑定是通过forall和bulk collect子句来完成的。Bulk collect子句用于取得批量数据,该子句只能用于select语句、fetch语句和DML返回子句中;而forall语句只适用于执行批量的DML操作。--以下进行 比较批量绑定用否的区别CREATE TABLE demo(id NUMBER( 阅读全文
posted @ 2010-09-14 12:48 蓝紫 阅读(806) 评论(0) 推荐(0) 编辑
PL/SQL集合方法、集合赋值、比较集合
摘要:2010年9月14日 11:06:47 PL/SQL集合方法、集合赋值、比较集合 集合方法 集合方法是oracle所提供的用于操纵集合变量的内置函数或过程,其中exists,count,limit,first,next,prior,next是函数,而extend,trim,delete则是过程。集合调用语法如下: collection_name.method_name[(parameters)] 注意,集合方法只能在PL/SQL语句中使用,而不能在SQL语句中使用。另外集合方法extend和trim只适用于嵌套表和varray,而不适用于索引表。--exists 用于确定集合元素是否存在 de 阅读全文
posted @ 2010-09-14 11:08 蓝紫 阅读(6426) 评论(0) 推荐(1) 编辑
表连接与表查询
摘要:表的连接内连接:以下两个语法实现的结果相同Select * from G3E_ATTRIBUTE A JOIN G3E_TABATTRIBUTE B ON A.G3E_ANO=B.G3E_ANOSELECT * FROM G3E_ATTRIBUTE A,G3E_TABATTRIBUTE B WHERE A.G3E_ANO=B.G3E_ANO外连接:外连接分为两种,一种是左连接(Left JOIN)和右连接(Right JOIN)(1)左连接(Left JOIN)表示左边的表全部显示,右边不匹配的用空的表示 语句如下:select * from A Left JOIN B ON A.Aid=B. 阅读全文
posted @ 2010-09-01 20:17 蓝紫 阅读(507) 评论(0) 推荐(0) 编辑
plsql控制结构
摘要:2010年8月31日 19:51:46 if-then-else语句declarea number;b varchar2(10);begina:=3;if a=1 thenb:='A';elsif a=2 thenb:='B';elseb:='C';end if;dbms_output.put_line('b的值是:'||b);end;case语句declarea number;b varchar2(10);begina:=3;case when a=1 then b:='A';when a=2 then b:=& 阅读全文
posted @ 2010-08-31 20:01 蓝紫 阅读(625) 评论(0) 推荐(1) 编辑
记录、同义词、序列、异常及授权的使用
摘要:2010年8月31日 18:22:45 记录--记录的用法 即一个多字段复合的写法(前提是对应字段与表中的字段类型长度一致) --g3e_attribute表的g3e_ano类型是number,g3e_username类型是varchar2declaretype myrecord is record(id varchar2(10),name varchar2(10));real_record myrecord;beginselect g3e_ano,g3e_username into real_record from g3e_attribute where g3e_ano=1;dbms_out 阅读全文
posted @ 2010-08-31 18:51 蓝紫 阅读(2202) 评论(0) 推荐(0) 编辑
游标的使用
摘要:游标的使用1、显式游标(含有声明)declarecursor mycur is select * from g3e_attribute;myrecord g3e_attribute%rowtype;beginopen mycur;fetch mycur into myrecord;while mycur%found loopdbms_output.put_line(myrecord.g3e_username);fetch mycur into myrecord;end loop;close mycur;end;在显式游标中,使用FETCH...BULK CELLECT INTO语句提取所有数据 阅读全文
posted @ 2010-08-23 16:41 蓝紫 阅读(1471) 评论(0) 推荐(0) 编辑
数据库函数
摘要:2010年8月23日 15:45:06 常用的系统函数1字符函数length函数select length('abcd') from dual;select length('abcd好') from dual;--5个字符select lengthb('abcd好') from dual;--6个字节 一个汉字两个字节trim函数 (去除空格函数)select ltrim(' abcd') from dual;--截左边的空格select rtrim(' abcd ') from dual;--截右边的空格sele 阅读全文
posted @ 2010-08-23 16:29 蓝紫 阅读(9937) 评论(0) 推荐(0) 编辑
监听程序启动
摘要:2010年8月23日 监听程序lsnrctl Start 启动监听程序 也可以通过服务来启动lsnrctl stop 停止监听程序 也可以通过服务来停止lsnrctl Start listenername: 启动具体的某一监听程序(oracle默认的端口都是1521,如果想在配置另一个端口,就必须在net manager中新增一个监听,端口可设置为1522,这样可以分一部分机子访问1522这个端口,减少1521这个端口的负载,而且新增的监听程序不会在服务中自动启动,所以就必须通过命令的方式来启动) 阅读全文
posted @ 2010-08-23 15:04 蓝紫 阅读(999) 评论(1) 推荐(1) 编辑
数据库备份
摘要:2010年8月23日 11:50:16 整理下关于数据库备份的学习数据库文件的备份1、逻辑备份方法就是采用命令将数据库的表导出,格式是dmp逻辑备份: exp fyzh/fyzh@GISDB file=e:\detail.dmp tables=(b$gc_detailind_s,b$gc_detailind_s_sdogeom);--导出某表逻辑恢复: IMP fyzh/fyzh@temp file=e:\detail.dmp tables=(b$gc_detailind_s,b$gc_detailind_s_sdogeom);--导入的表与导出的表结构要一致2、物理备份冷备份:即到oracl 阅读全文
posted @ 2010-08-23 14:50 蓝紫 阅读(1236) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 下一页