oracle – 如何使用Spring JdbcTemplate截断表?

我试图用Spring截断一个表:

jdbcTemplate.execute("TRUNCATE TABLE " + table);

得到错误:

Caused by: org.springframework.jdbc.BadSqlGrammarException:
StatementCallback; bad SQL grammar
[TRUNCATE TABLE RESULT_ACCOUNT];
nested exception is
java.sql.SQLException: Unexpected
token: TRUNCATE in statement
[TRUNCATE]

有任何想法吗?

解决方法:

这里的问题是您不能在现有事务中执行任何DDL(例如truncate).原因是DDL执行自动提交而不与事务概念(即:回滚)一起生成.所以我把方法设置为NOT_SUPPORTED,我很好.

上一篇:TRUNCATE - 清空一个表


下一篇:delete、truncate、drop区别