java中db2临时表的运用

news/2025/3/31 10:24:28/

java中db2临时表的运用

  • 创建DB2临时表命令:Declare Global Temporary Table(如下), 并且需要创建在用户临时表空间上;
declare global temporary table TMP(					aaaa				varchar(20)		not null,	bbbb				bigint			not null,	cccc				varchar(32)		not null	
)														
on commit preserve rows									
not logged												
  • DB2在数据库创建临时表时, 并不创建临时表空间, 如果需要使用临时表, 则需要用户在创建临时表之前创建用户临时表空间;

  • 临时表的模式为SESSION(会话临时表),且在会话之间是隔离的。当会话结束时,临时表的数据被删除。对临时表的定义不会在SYSCAT.TABLES中出现 .

  • 在Commit命令执行时, DB2临时表中的所有记录将被删除; 这可以通过创建临时表时指定不同的参数来控制;

  • 运行ROLLBACK命令时, 用户临时表将被删除;

上例创建临时表时使用【ON COMMIT PRESERVE ROWS】语法,该语法表示了数据在COMMIT之后临时表的一种状态。当会话终止时,表行和临时表描述均会被删除。 有如下选项,可控制commit后临时表的状态:

ON COMMIT PRESERVE ROWS

  1. 执行COMMIT操作时,当提交数据之后(COMMIT)、关闭事务之前(close)手动执行DELETE或TRUNCATE之前,临时表中的数据一直存在,并且只有当前会话可以看到,其他会话看不到。
  2. 在执行 ROLLBACK(或 ROLLBACK to SAVEPOINT)操作时,保留表中的所有行。

ON COMMIT DELETE ROWS

  1. 执行 COMMIT 操作时,如果表上没有打开游标,这时就会删除表中的所有行。
  2. 在执行 ROLLBACK(或 ROLLBACK to SAVEPOINT)操作时,语句指定所创建的临时表是事务级临时表,当提交数据之前(commit)ROLLBACK之前,这些数据一直存在,当事务提交之后,表中数据自动清除。(默认设置)

注意:
1、一个会话(SESSION)可以包含多个事务
2、以上所说commit操作是指数据提交并不是指事务关闭;
close() 是指事务关闭






在此跟大家分享一下 DB2 基本表与 DB2 临时表之间的重要差别
DB2 基本表与 DB2 临时表之间的重要差别

以上


http://www.ppmy.cn/news/71772.html

相关文章

Linux系统编程学习 NO.2 ——环境配置和基础指令的学习

操作系统根据使用方式分类 操作系统按照使用类型可分为图形化操作系统和指令操作系统。图形化操作系统的本质其实也是根据指令来操作的。指令更贴近操作系统的底层。而我在学习Linux系统编程时,采用命令行的方式来学习。 补充一个小知识:早期命令行操作…

实现Fast sigmoid和Softmax

Sigmoid 函数介绍 Sigmoid 函数(Logistic 函数)是神经网络中非常常用的激活函数,它的数学表示如下: 由于 e x e^x ex幂运算是非常耗时的计算,因此尝试通过替换sigmoid中的 e x e^x ex运算,来提高运行效率,同…

JSP自动排课系统(源代码+论文+开题报告)

计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计算机可以代替人工进行许多…

“探索C++非质变算法:如何更高效地处理数据“

📖作者介绍:22级树莓人(计算机专业),热爱编程<目前在c++阶段>——目标Windows,MySQL,Qt,数据结构与算法,Linux,多线程&…

Kangas:计算机视觉中的Pandas

介绍 在计算机视觉领域,Kangas是一种越来越受欢迎的工具,用于图像数据处理和分析。类似于Pandas如何改变数据分析人员处理表格数据的方式,Kangas对计算机视觉任务也起到了同样的作用。 Kangas是Comet ML开源的工具,用于探索、分析…

Git——C站最详细的Git教程,一篇学会Git(window\linux通用)

Git——C站最详细的Git教程,一篇学会Git(window\linux通用) 文章目录 Git——C站最详细的Git教程,一篇学会Git(window\linux通用)Git简介Git作用为什么要进行源代码管理?Git的诞生Git管理源代码特点Git操作流程图解 工作区暂存区和仓库区工作区暂存区仓…

modbus协议与nodejs modbus-serial实现

nodejs可通过modbus-serial库来实现modbus协议 npm install modbus-srial 安装完后在examples目录下有例子说明如何使用,本文主要讲述作为客户端的使用方式。 polling_RTU是使用485串口来实现modbus通信, polling_TCP和 polling_UDP则使用TCP/UDP来实现…

深度学习中关于图像分类的设计

目录 一、前言 二、项目介绍 三、项目展示 四、项目经验分享 一、前言 深度学习是一种基于人工神经网络的机器学习技术,通过多层非线性变换来学习数据的高级抽象表示。深度学习在图像、语音、自然语言处理等领域都有广泛应用。深度学习的优点是可以处理大量数据…