全面认识INFORMIX临时表

本文详述Informix临时表的概念、SQL语法、存储、系统创建情况、优化建议及IDS11.5的新特性。临时表作用于session,根据是否启用WITH NO LOG选项决定是否记录事务日志。在IDS11.5中,引入TEMPTAB_NOLOG参数以关闭临时表日志,提升性能。此外,文章还强调了临时表空间管理和约束条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全方位认识INFORMIX临时表及临时表IDS11.5新特性

概述

       本文描述Informix临时表的概念、SQL、临时表空间、约束、新特性以及优化建议。目的旨在说明如何在我们的应用开发中合理的使用和管理Informix临时表。

Informix数据库中,我们可以创建临时表来处理应用中的临时数据,并且临时表数据存储在临时表空间中。Informix系统不记录临时表的字典信息,从数据库系统表中查询不到临时表的如何相关信息。可以在临时表上创建索引。临时表的作用域为session,当session结束(应用程序断开数据库)、数据库实例关闭或者系统异常关闭后重新启动时临时表由数据库系统自动进行删除。因此,我们需要正确利用Informix临时表这些特点来解决我们数据库应用系统中的各种业务问题。

临时表SQL语法

       可以采用如下两种方式创建临时表:

      A、使用 SELECT INTO TEMP 语句隐含地创建临时表;

    B、使用 CREATE TEMP TABLE 语句显示地创建临时表;

    显示的创建临时表的语法描述如下:

 

 

 

       注意事项:

n         命名规则:临时表只作用于一个session中,而不在整个数据库中。在一个session创建临时表时应该遵守如下规则:

A、  临时表明必须不同于当前数据库中其他table,view,sequencesynonym的名称;

B、  可以与其他session中的临时表名称相同;

C、  在同一session中,不能创建相同名称的临时表,可以先删除后再创建。

n         WITH NO LOG:在日志数据库中,定义该选项后,对该临时表的操作不记录事务日志。

示例说明:如下示例说明临时表的使用语法。

DataBase:demodb buffed log

数据库demodb存在如下表:tab1  create table tab1(c1 integer);

Session 1:
Create temp table tmp_a(c1 integer,c2 char(2)) with no log;
Insert into table tmp_a(c1,c2) values(1,’a’);
Create index idx_tmp_a on a(c1);
Select * from tab1 into tmp_b with no log;
Select c1 from tmp_a into tmp_c with no log;
Drop table tmp_a;
Create temp table tmp_a(c1 int) with no log;

Session 2:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值