DB2清空表中数据

1. NOT LOGGED INITIALLY的使用
ALTER TALBE 模式名(schema).表名 ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE
[b]说明:[/b]这个方法仅在所操作的表在创建时选择了NOT LOGGED INITIALLY选项进行定义后才可使用。整个删除操作不会记入日志中,因此执行速度是几种方法中最快的一种,但删除的数据是不可恢复的。
2. DELETE 的使用
DELETE FROM模式名(schema).表名
[b]说明:[/b]该语句将清除表中所有的数据,但由于这一操作会记日志,因此执行速度相对于上一种方法要相对慢一些。另外要注意的是,如果表较大,为保证删除操作的成功,应考虑留有足够大的日志空间。
3. DROP/CREATE的使用
DROP TABLE模式名(schema).表名
CREATE TABLE 模式名(schema).表名 (表字段定义)
[b]说明:[/b]这种清除表中数据的语句,也会将表也删除,所以使用这个语句之前,先保存表的定义语句,操作的时候先保存表的定义语句,然后执行删除操作,最后建表。如果表较大,可以使用这个方法,用这种方法实现表中数据清空,其速度要比delete语句清空表中数据的速度要快一些。
4. IMPORT或LOAD的使用
Db2 “IMPORT FROM 文件名.del(或者/dev/null) OF DEL REPLACE INTO 模式名(schema).表名”
或者Db2 “IMPORT FROM /dev/null OF DEL REPLACE INTO 模式名(schema).表名”
Db2 “LOAD FROM文件名.del OF DEL REPLACE INTO 模式名(schema).表名 NONRECOVERABLE”
或者Db2 “LOAD FROM /dev/null OF DEL REPLACE INTO 模式名(schema).表名 NONRECOVERABLE”
[b]说明:[/b]这2个语句中,文件名.del为空文件,并且语句是在Unix系统中操作db2时使用。Replace导入方式会先将表中所有数据清空,然后import/load又向表中导入空数据,从而实现数据的清除操作。
如果要实现truncate table的效果,就用IMPORT FROM 空文件的方法,用其它方法都不好。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值