`
starbhhc
  • 浏览: 654222 次
  • 性别: Icon_minigender_2
  • 来自: 深圳
社区版块
存档分类
最新评论

DB2表清空数据的四种方法

 
阅读更多

对于使用DB2 数据库的用户,有时有需要将表中数据清空的需求,这里提供了四种数据删除的方法,以供用户根据自己的需求进行选择

 

DB2数据库系统建表后,难免会有将表中数据清空的需求,本文将为您介绍DB2数据库中四种数据删除的方法,供您参考,您可以根据实际情况来进行选择,希望能对有所帮助。

1. 使用 DELETE 语句,即:

DELETE FROM <表名>

该语句将清除表中所有数据,但由于这一操作会记日志,因此执行速度会相对慢一些,另外要注意的是,如果表较大,为保证删除操作的成功,应考虑是否留有足够大的日志空间。

2. 使用 NOT LOGGED INITIALLY 选项,即:

ALTER TABLE <表名> ACTIVATE NOT LOGGED INITIALLY WITH EMPTY TABLE

这一方法仅在所操作的表在创建时选择了 NOT LOGGED INITIALLY 选项进行定义后才可使用。整个删除操作将不会记日志,因此执行速度是几种方法中最快的一种,但删除的数据是不可恢复的。

3. 使用 IMPORT 或 LOAD 命令,即:

IMPORT FROM /dev/null OF DEL REPLACE INTO <表名> --(Unix 系统)
或 IMPORT FROM <空文件> OF DEL REPLACE INTO <表名>

LOAD FROM /dev/null OF DEL REPLACE INTO <表名> NONRECOVERABLE --(Unix 系统)

或 LOAD FROM <空文件> OF DEL REPLACE INTO <表名> NONRECOVERABLE

在这一方法中,REPLACE 导入方式首先会将表中所有数据清空,然后 IMPORT/LOAD 又向表中导入了空数据,从而实现了数据的清除操作。

4. 使用 DROP/CREATE TABLE 语句,即:

DROP TABLE <表名>
CREATE TABLE <表名> <字段的定义>

如果保存有表的定义语句,或已利用 DB2LOOK 命令获得了表定义的脚本,也可先删除整个表,再重新创建表。如果表较大,用这种方法实现数据清空的速度会快于方法一。

如果要实现truncate table的效果,就用IMPORT FROM 空文件的方法,用其它方法都不好。

 

分享到:
评论

相关推荐

    DB2清空表里所有数据.doc

    当需要对 DB2 表进行操作,比如清空其中的所有数据时,有几种不同的 SQL 语句可以实现这一目标。以下是对标题和描述中涉及的知识点的详细解释: 1. **DELETE 语句**: DELETE 语句是最常见的删除表中数据的方法。...

    DB2删除大数据量表方法.pdf

    第一种方法是利用`IMPORT`命令配合一个空文件来清空表的数据。具体步骤如下: 1. 在D盘创建一个名为`empty.del`的空文件。这个文件通常只包含文件头信息,没有实际的数据行。 2. 使用`IMPORT`命令,指定从`empty....

    DB2-数据迁移.ppt

    导出工具(EXPORT)是DB2提供的一种将数据从数据库表中导出到文件的机制。它可以将数据以SELECT语句的形式导出为DEL、IXF或WSF格式,但不支持ASC格式。在命令行中,可以通过`db2 export`命令实现导出,而在控制中心...

    数据业务工程师DB2入门指南

    - 方法:使用`TRUNCATE TABLE`命令可以高效地清空表中的所有数据。 - **1.4.6 前滚时遇到未记日志的失败操作,表被破坏** - 原因:在进行数据库恢复时,如果遇到未记录的日志操作,可能导致数据损坏。 - 处理:...

    db2使用技巧

    以下是 DB2 使用技巧的总结,涵盖了字符串连接、数据删除、数据导入导出、表检查、锁表问题、存储过程、索引检查、数据库快照、存储过程查看、表列表、字符位置搜索、日期计算、表映射、表结构查看、数据库重启、...

    DB2 归档日志清理

    为了保证数据的一致性和完整性,DB2通过日志机制实现了数据恢复功能。然而,随着时间的推移,日志文件会不断累积,占据大量的磁盘空间。因此,定期进行日志清理是非常必要的。 #### 二、DB2日志清理流程 根据给定...

    oracle和db2的区别

    - 这个操作在DB2中也能高效地清空表。 #### 6. 关于ROWID - **Oracle**: - ROWID是Oracle数据库提供的一个特殊功能,用于唯一标识表中的每一行。 - **DB2**: - DB2 V8版本开始支持类似ROWID的功能。 #### 7. ...

    DB2手册pdf

    DB2支持使用`TRUNCATE TABLE`命令来快速清空表中的所有数据,同时不会记录日志。例如: ```sql TRUNCATE TABLE my_table; ``` #### 用CLI编程批量的INSERT 通过CLI (Call Level Interface) 编程可以实现批量插入。...

    DB2 数据库常用命令

    #### 四、REORG — 数据重组与维护 `REORG`和`REORGCHK`命令是DB2数据库维护的重要组成部分,它们用于优化数据库的物理存储结构。`REORG`命令可以重新组织数据库表和索引的物理布局,消除碎片,减少I/O操作,从而...

    DB2数据库学习资料

    DB2数据库是一款由IBM开发的关系型数据库管理系统,广泛应用于企业级的数据存储和管理。以下是一些关于DB2数据库的关键知识点,这些知识点对于初学者或有经验的DBA都非常有用: 1. **节点管理**: - `db2 list ...

    DB2使用经验积累及心得

    - **类似于ORACLE的TRUNCATE清表但不记日志的做法**:使用`TRUNCATE TABLE`清空表而不记录日志。 - **用CLI编程批量的INSERT**:利用批量插入提高性能。 #### DB2一些不好的限制 - **临时表不能建索引**:临时表...

    db2数据迁移

    对于 `replace` 操作,务必在执行前备份数据,因为一旦出错,表数据可能会被清空。 在实际工作中,可能会遇到各种问题,如表状态、客户端加载限制等,理解并正确使用这些工具和命令能够有效提升数据迁移的效率和...

    ORACLE与DB2的区别和转换

    DB2则通过`cast`函数实现相同功能,可以将一种数据类型转换为另一种数据类型。 ##### 8. 创建类似表 **Oracle**: `create table a as select * from b;` **DB2**: `create table a like b;` - **解析**: 在...

    DB2 常用技术参考.doc

    本文档主要介绍了DB2的一些常用技术,包括字符集配置、显示数据库配置信息、错误代码查询、执行存储过程、清空表、UNION与UNION ALL的区别、EXCEPT ALL的使用、INTERSECT的使用、赋权语句以及左关联查询和存储过程中...

    db2db配置详细说明

    可以通过`&lt;stage&gt;`标签来执行单个数据库内部的操作,例如清空表数据: ```xml &lt;![CDATA[ truncate table user_Info ]]&gt; ``` - `&lt;drawoutDB&gt;`:执行SQL语句,可以是`truncate`、`update`等操作。 ...

    DB2常用语句

    - `&lt;表名&gt;`:要清空数据的表的名称。 - 使用`TRUNCATE TABLE`比使用`DELETE FROM`更高效,因为它不记录删除操作的日志,因此执行速度更快。 #### 查看seq值 - **命令**:`SELECT NEXT VALUE FOR 名&gt; FROM SYSTBM....

    DB2数据库常用技术总结

    `清空表数据。 10. **执行过程语句**:调用存储过程的语法是`CALL 过程名(参数1,参数2……)`。 11. **动态SQL**:在存储过程中,可以动态构建SQL语句,如`set v_sql = ' insert into t_st_xj_operation_num_grp .....

Global site tag (gtag.js) - Google Analytics