今天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