oracle用法(Oracle中的临时表用法汇总)
本文目录
Oracle中的临时表用法汇总
语法 在Oracle中 可以创建以下两种临时表 ) 会话特有的临时表 CREATE GLOBAL TEMPORARY( ) ON MIT PRESERVE ROWS ) 事务特有的临时表 CREATE GLOBAL TEMPORARY( ) ON MIT DELETE ROWS CREATE GLOBAL TEMPORARY TABLE MyTempTable 所建的临时表虽然是存在的 但是如果insert 一条记录然后用别的连接登上去select 记录是空的 ON MIT DELETE ROWS 说明临时表是事务指定 每次提交后ORACLE将截断表(删除全部行) ON MIT PRESERVE ROWS 说明临时表是会话指定 当中断会话时ORACLE将截断表 动态创建 create or replace procedure pro_temp(v_col varchar v_col varchar ) as v_num number; begin select count(*) into v_num from user_tables where table_name= T_TEMP ; create temporary table if v_num《 then execute immediate CREATE GLOBAL TEMPORARY TABLE T_TEMP ( COL VARCHAR ( ) COL VARCHAR ( ) ) ON MIT delete ROWS ; end if; insert data execute immediate insert into t_temp values( v_col v_col ) ; execute immediate select col from t_temp into v_num; dbms_output put_line(v_num); execute immediate delete from t_temp ; mit; execute immediate drop table t_temp ; end pro_temp; 测试: : : SQL》 set serveroutput on : : SQL》 exec pro_temp( ); PL/SQL 过程已成功完成 已用时间: : : : : SQL》 desc t_temp; ERROR ORA : 对象 t_temp 不存在 通过查询创建临时表 create proecdure name_pro as str varchar ( ); begin str:= CREATE GLOBAL TEMPORARY TABLE TABLENAME ON MIT PRESERVE ROWS as select * from other_tables ; execute immediate str; end; 特性和性能(与普通表和视图的比较) 临时表只在当前连接内有效 临时表不建立索引 所以如果数据量比较大或进行多次查询时 不推荐使用 数据处理比较复杂的时候时表快 反之视图快点 在仅仅查询数据的时候建议用游标: open cursor for sql clause ; lishixinzhi/Article/program/Oracle/201311/18537
oracle数据库中函数怎么使用
oracle数据库中函数较多,而且每个函数都有自己的用法,所以要根据具体的函数查询具体的使用方法,比如:decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省值)这个函数运行的结果是,当字段或字段的运算的值等于值1时,该函数返回值2,否则返回值3当然值1,值2,值3也可以是表达式,这个函数使得某些sql语句简单了许多使用方法:1、比较大小selectdecode(sign(变量1-变量2),-1,变量1,变量2)fromdual;--取较小值sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1例如:变量1=10,变量2=20则sign(变量1-变量2)返回-1,decode解码结果为“变量1”,达到了取较小值的目的。2、此函数用在SQL语句中,功能介绍如下:Decode函数与一系列嵌套的IF-THEN-ELSE语句相似。base_exp与compare1,compare2等等依次进行比较。如果base_exp和第i个compare项匹配,就返回第i个对应的value。如果base_exp与任何的compare值都不匹配,则返回default。每个compare值顺次求值,如果发现一个匹配,则剩下的compare值(如果还有的话)就都不再求值。一个为NULL的base_exp被认为和NULLcompare值等价。如果需要的话,每一个compare值都被转换成和第一个compare值相同的数据类型,这个数据类型也是返回值的类型。
oracle 的用法
在网上下载oracle基本语法的视频sql语句跟sqlserver一样的编程都是一样的但是一些用法不太一样,比如,sqlserver里有自增长,但是Oracle里没有,他有序列,用sequence代表很多都是一样的,函数比较多,多看看视频就好了,
更多文章:
数据结构c语言版耿国华(数据结构-C语言描述/新世纪计算机类本科系列教材 在那里买的到啊)
2024年7月8日 13:07
flank ahead为什么是全速前进呢flank不是侧面的意思么?英语翻译,这里的flk是什么缩写
2024年6月5日 04:17
phpecho输出怎么居中(php中怎样让输出的值显示在页面的中间)
2024年7月30日 09:05
apologize什么意思中文(apologize是什么意思啊)
2024年6月4日 01:52
vmwaretools安装失败回滚(vmware tools无法安装怎么办)
2024年7月16日 18:04
access查询教程(access里窗体加查询怎么做,希望详细地教一下)
2024年9月27日 19:20
ie设置activexobject(怎么在ie浏览器调用本地的应用程序)
2024年6月25日 08:57
queue jumper是什么意思(jumper是什么意思)
2024年7月9日 23:20
work前面加什么介词(at work 和in the work的区别)
2024年5月11日 02:35