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

前端之家收集整理的这篇文章主要介绍了syntax – 用于截断IBM DB2中的表的SQL查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
任何人都可以给我一些截断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

原文链接:https://www.f2er.com/mssql/76153.html

猜你在找的MsSQL相关文章