zm mei ren lai,zj up

解决方案 »

  1.   

    String sql="delete from collectionVar where variableid in (select [id] from variable where solutionid=?)"; 
    使用PrepareStatement传值试试看,用excuteUpdate()执行看看
      

  2.   

    1.程序中是否对自动提交进行设置了 dbConnection.setAutoCommit(true);
    2.查看你的事务控制,即执行这条语句的同时,是否同时执行其他的语句,可能是其他语句的错误引起了事务的回滚
      

  3.   

    同事务中的其它语句同样可以执行的。
    我用的SQLServer
      

  4.   

    我的具体做法是
    为了体现敏捷软件开发思想:
    我把执行数据库操作的语句写在一个方法
    然后在完成具体删除业务的类里面继承执行数据库操作语句的方法所在的类。
    用的是excute,prepareStatement,不是excuteUpdate,prepareStatement并没有传值,只是在调用删除操作的方法的参数中已经设定。