加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

syntax – 用于截断IBM DB2中的表的SQL查询

发布时间:2020-12-12 08:25:30 所属栏目:MsSql教程 来源:网络整理
导读:任何人都可以给我一些截断IBM DB2中的表的语法. 我运行以下命令:truncate table tableName immediate; 错误是DB2 SQLCODE=-104,SQLSTATE=42601,SQLERRMC=table;truncate ;JOIN,DRIVER=3.50.152 Message: An unexpected token “table” was found following
任何人都可以给我一些截断IBM DB2中的表的语法.

我运行以下命令:truncate table tableName immediate;

错误是DB2

SQLCODE=-104,SQLSTATE=42601,SQLERRMC=table;truncate ;JOIN,DRIVER=3.50.152
Message: An unexpected token “table” was found following “truncate “. Expected tokens may include: “JOIN “.. SQLCODE=-104,DRIVER=3.50.152

语法与IBM:http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=/com.ibm.db29.doc.sqlref/db2z_sql_truncate.htm的参考文档中指定的语法相匹配

解决方法

有一篇关于 truncating的好文章,这里是DB2的主要内容

几乎遵循标准.(从版本9.7开始)
DB2要求将IMMEDIATE关键字添加到普通的TRUNCATE TABLE语句中,例如:

TRUNCATE TABLE someschema.sometable IMMEDIATE

TRUNCATE TABLE必须是事务中的第一个语句.以TRUNCATE TABLE开头的事务可能包含其他语句,但如果事务回滚,则TRUNCATE TABLE操作不会撤消.
DB2s TRUNCATE TABLE操作有许多可选参数,有关详细信息,请参阅文档;特别是,REUSE STORAGE参数对ad-hoc DBA任务可能很重要.
在DB2版本中< 9.7,您可以滥用IMPORT声明.不幸的是,您需要知道执行命令的操作系统才能使其正常工作: 在类似unix的系统上:
IMPORT FROM / dev / null DEL DELLACE INTO tablename
在Windows上:
从NUL删除REPTRACE到表名
IMPORT不能在所有情况下被滥用.例如,在使用动态SQL时(从Java / .NET / PHP /…-不使用db2命令行处理器),您需要在对ADMIN_CMD的调用中包装IMPORT命令,例如:

CALL ADMIN_CMD('IMPORT FROM /dev/null OF DEL REPLACE INTO tablename')

IMPORT似乎在涉及其他操作的事务中被允许,但它意味着立即执行COMMIT操作.

ALTER TABLE命令也可能被滥用以快速清空表,但它需要更多权限,并且可能会导致前滚恢复出现问题.

这是从网站上获取的:
http://troels.arvin.dk/db/rdbms/#bulk-truncate_table-db2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读