今天debug的时候发现使用truncate的时候executeUpdate()的返回值是0,让我十分费解,因为之前使用update语句debug出来的返回值是需要更新的条数,后来问了群里老哥,老哥说是因为truncate是DDL语句,返回值为0时表示成功,为-1时表示失败,后又去查了源码,确实如此,记录一下。

源码解释:

QL语言包括四种主要程序设计语言类别的语句:
数据定义语言(DDL),数据操作语言(DML),数据控制语言(DCL)和事务控制语言(TCL)。
主要的DDL动词:
CREATE(创建)、DROP(删除)、ALTER(修改)
TRUNCATE(截断)、RENAME(重命名)
DML主要指数据的增删查改: Select、delete、update、insert、call
本文探讨了在使用SQL的truncate语句时,通过executeUpdate()方法获取的返回值含义。文中指出,由于truncate属于数据定义语言(DDL)的一部分,因此其返回值0表示成功执行,而-1则表示执行失败。此外,还对比了truncate与常见的数据操作语言(DML)如update等在执行返回值上的区别。
1189

被折叠的 条评论
为什么被折叠?



