`
robot_liu
  • 浏览: 83080 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

oracle 临时表和动态SQL

阅读更多
create or replace procedure sp_tmp_test(v_col1 in varchar2,v_col2 in varchar2)
as
v_num                  NUMBER;
v_char                 varchar2(10);
sql_text               varchar2(2000);
sql_text1              varchar2(2000);
notes                  varchar2(500);
p_nError               NUMBER;
V_ERROR_MESSAGE        VARCHAR2(500);

BEGIN
select count(*) into v_num from user_tables where table_name='T_TEMP';

--create temporary table
execute immediate 'CREATE GLOBAL TEMPORARY TABLE T_TEMP (
COL1 VARCHAR2(10),
COL2 VARCHAR2(10)
) ON COMMIT delete ROWS';

--insert data
sql_text:='insert into t_temp values(:1,:2)';
execute immediate sql_text using v_col1,v_col2;
--sql_text1:='select col1 into :1 from t_temp ';
--execute immediate sql_text1 using v_num;
--select col1 into v_num from t_temp;
execute immediate 'select col1 from t_temp' into v_char;

dbms_output.put_line(v_char);
execute immediate 'delete from t_temp';
commit;
execute immediate 'drop table t_temp';
EXCEPTION
    WHEN OTHERS THEN
    execute immediate 'drop table t_temp';
    p_nError        := SQLCODE;
    V_ERROR_MESSAGE := sqlerrm;
    dbms_output.put_line('error: ' || p_nError || ' ' || sqlerrm(p_nError));
END;
分享到:
评论

相关推荐

    oracle查找定位占用临时表空间较大的SQL语句方法

    oracle查找定位占用临时表空间较大的SQL语句方法,包括:(1)造成临时表空间暴涨的SQL还在运行中(2)造成临时表空间暴涨的SQL已经运行过了。

    Oracle 临时表用法

    本文将详细介绍Oracle临时表的创建方法、使用场景以及优缺点,帮助读者更好地理解和运用这一特性。 #### 二、Oracle临时表概述 Oracle临时表是一种特殊的表,用于存储临时数据,通常用于事务处理或特定会话期间的...

    Oracle临时表空间满的解决步骤

    Oracle 临时表空间满的问题需要通过查看当前数据库的默认临时表空间、查看当前临时表空间的大小、创建新的临时表空间、将新建的临时表空间设置为数据库的默认临时表空间、删除原来的临时表空间、创建新的临时表空间...

    Oracle临时表空间不足和批处理缓慢问题探讨.pdf

    Oracle 临时表空间不足和批处理缓慢问题探讨 本文探讨了 Oracle 临时表空间不足和批处理缓慢问题的原因和解决方法。通过分析和测试,发现了问题的根源在于应用逻辑方面,具体来说是 SQL 语句的编写问题。通过编写...

    oracle临时表(事务级、会话级).docx

    "Oracle 临时表(事务级、会话级)" Oracle 临时表是 Oracle 数据库中的一种特殊类型的表,它可以保存...在 Oracle 中,临时表可以分为事务级和会话级,而在 SQL Server 中,临时表可以分为本地临时表和全局临时表。

    ORACLE中临时表

    需要注意的是,与SQL Server和Sybase等其他数据库系统相比,Oracle中不应在运行时动态创建临时表,而应在应用程序安装时创建。DDL操作(如创建表)开销较大,应尽量避免在运行时执行。 总结来说,Oracle的临时表...

    Oracle临时表

    根据数据的生命周期,Oracle临时表可以分为两大类:事务临时表和会话临时表。 ##### 1. 事务临时表 - **定义**:事务临时表中的数据仅在当前事务的生命周期内有效。一旦事务结束(通过提交或回滚),表中的所有...

    SQL Server中关于临时表概念及创建和插入数据等问题

    SQL Server 中的临时表概念、创建和插入数据等问题 SQL Server 中的临时表概念是指名称以井号 (#) 开头的表,如果当用户断开连接时没有除去临时表,SQL Server 将自动除去临时表。临时表有两种类型:本地临时表和...

    Oracle释放临时表空间脚本

    通过以上步骤,我们可以有效地管理和调整Oracle数据库中的临时表空间,确保其能够满足不同场景下的需求。这包括但不限于创建新的临时表空间、更改默认的临时表空间设置、删除旧的临时表空间以及在用户级别上进行临时...

    Oracle存储过程中使用临时表

    本篇文章将深入探讨如何在Oracle存储过程中使用临时表,包括会话级临时表和事务级临时表。 ### 会话级临时表 会话级临时表(Session-Level Temporary Tables)只在创建它的会话内可见,并且在会话结束时自动删除。...

    学习oracle创建一个表空间创建临时表空间创建用户表空间资源的权限

    在Oracle数据库系统中,表空间(Tablespace)是存储数据对象(如表、索引、视图等)的逻辑单位,而临时表空间(Temporary Tablespace)则用于存储临时数据,比如排序或联接操作产生的中间结果。创建和管理表空间及...

    Oracle 临时表用法汇总

    1)、当某一个SQL语句关联的表在2张及以上,并且和一些小表关联。可以采用将大表进行分拆并且得到比较小的结果集合存放在临时表中。 2)、程序执行过程中可能需要存放一些临时的数据,这些数据在整个程序的会话...

    查看Oracle表空间的sql语句

    查看oracle表空间和临时表空间的使用情况、当前用户下的表所占空间大小表空间物理文件的名称和大小,是oracle DBA的利器哦

    oracle自增长与临时表

    **二、Oracle临时表** 临时表在Oracle中用于在单个会话中存储临时数据,这些数据只对创建它们的会话可见,会话结束时,临时表及其数据都会被自动删除。 1. **创建临时表**:使用`CREATE GLOBAL TEMPORARY TABLE`...

    oracle临时表

    Oracle临时表是数据库管理系统...通过学习和理解Oracle临时表,我们可以更有效地管理短暂的、会话级别的数据,优化数据库性能,提升应用的响应速度。在实际工作中,适时使用临时表能为我们的数据库操作带来极大的便利。

    oracle-临时表空间

    ### Oracle 临时表空间详解 ...总结而言,通过上述内容我们可以了解到Oracle数据库中临时表空间的基本概念、查询方法以及如何进行创建、修改和删除等操作。掌握这些知识点有助于更好地管理和优化数据库性能。

    对比Oracle临时表和SQL Server临时表的不同点

    - **数据隔离**:Oracle临时表的数据隔离更严格,不允许跨会话访问,而SQL Server的全局临时表允许跨会话访问,但生命周期控制保证了安全性。 - **索引和视图**:两者都可以创建,但Oracle的临时索引和视图只对...

    不让临时表空间影响ORACLE数据库性能

    - 文件"不要让临时表空间影响数据库性能 - Oracle - 1.mht"可能包含对临时表空间性能问题的初步分析和解决建议。 - 文件"不要让临时表空间影响数据库性能 - Oracle - 2.mht"可能详细讨论了临时表空间对数据库性能...

    oracle 动态SQL

    Oracle 动态SQL是数据库编程中的一个重要概念,它允许在运行时构建和执行SQL语句,从而提高了灵活性和适应性。动态SQL的使用通常在处理不确定的查询结构、执行基于条件的DML操作或者需要根据运行时信息生成SQL语句时...

    Oracle Sql语句转换成Mysql Sql语句

    4. **游标**:Oracle SQL支持游标,MySQL则不直接支持,需要使用存储过程或临时表来实现类似功能。 5. **函数和操作符**:两者内置的函数和操作符有所不同,例如Oracle的NVL对应MySQL的IFNULL,Oracle的TO_DATE对应...

Global site tag (gtag.js) - Google Analytics