Gry*_*ryu 0 oracle sqlplus oracle12c
我正在尝试使用Oracle / PLSQL 中的示例声明本地临时表: LOCAL TEMPORARY TABLES。但是,当我尝试将其插入sqlplus' CLI并点击时Enter,它不执行任何操作,除了按下Ctrl+C中断命令输入外,我不知道接下来要做什么来完成命令:
SQL> DECLARE LOCAL TEMPORARY TABLE suppliers_temp
( supplier_id number(10) NOT NULL,
supplier_name varchar2(50) NOT NULL,
contact_name varchar2(50)
); 2 3 4 5
6
7 ;
8 ^C
Run Code Online (Sandbox Code Playgroud)
为了执行这个查询,我以SYSTEM用户身份登录。
为什么这个例子对我不起作用?
local temporary tables不是 Oracle RDBMS 中的东西。相反,您可以拥有一个全局临时表 (GTT)(它创建一个永久表,但数据保存在会话级别),或者,在 18c 中引入,您可以拥有一个私有临时表 (PTT)(表定义和数据在会议级别举行)。
两者都类似于标准的 create table 语句,因此要创建一个在提交时删除行的 GTT,您可以执行以下操作:
create global temporary table table_name (col1 number, col2 varchar2(20))
on commit delete rows;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4242 次 |
| 最近记录: |