我有一个表,比如example1
,我正在使用jdbc语句删除其中一行。我尝试过各种方法,从delete from example1 where id = 1
到statement.addbatch(sql)
,但它不会删除该行。如果我在Toad for Mysql中执行相同的sql语句,它就可以删除该行。
奇怪的是,使用jdbc我能够从其他表中删除行就好了;只是这一张特别的表给了我意想不到的结果。
这张桌子没什么特别之处。它有一个主键,没有约束/外键关系。
此外,此删除是事务的一部分,因此自动提交设置为false
,一旦所有记录更新/插入/删除,则提交完成。这对任何其他表似乎没有任何问题,并且所有更新/删除/插入都完成了。
权限允许此表对db用户具有与db。中任何其他表相同的权限。
任何想法或指示将不胜感激!
答案 0 :(得分:0)
我遇到了同样的情况
我记得查询中有一个明确的错误 尝试在mysql sqlyog或任何GUI中执行查询并检查它是否有效,我100%确定它不会工作
然后更正查询并检查
答案 1 :(得分:0)
打开数据库上的常规日志记录或JDBC驱动程序中的分析将显示实际进入数据库的内容:
http://dev.mysql.com/doc/refman/5.0/en/connector-j-reference-configuration-properties.html
通过将连接字符串添加到连接字符串中来启用Connector / J查询的分析:profileSQL = true
常规记录文档: http://dev.mysql.com/doc/refman/5.1/en/query-log.html
还有mk-query-digest用于嗅探您的网络流量并分析结果: http://www.maatkit.org/doc/mk-query-digest.html