Oracle更新并加入执行更新JSP

时间:2019-02-07 04:34:59

标签: java oracle jsp

我想通过检查table1的column2和table2的column2的条件来更新table1的column1。

我只是得到缺少右括号的错误。

我只检查两个表的ID(ID是另一个表的外键),并检查激活码是否来自查询字符串,如果它们匹配,我将状态值更新为批准

String s = "Approve";
stmt.executeUpdate("UPDATE  
                                   ( SELECT Approval.STATUS AS st 
                                       FROM Approval 
                                       JOIN Activity 
                                         ON Activity.userid = Approval.id 
                                      WHERE Activity.activationcode = 
                                           '"+activationcode+"') as up SET up.st = '"+s+"'");

1 个答案:

答案 0 :(得分:0)

在下面替换您的更新表字符串,它应该可以工作

UPDATE 
 (SELECT 
    Approval.STATUS AS st 
  FROM 
    Approval JOIN Activity ON Activity.userid = Approval.id 
  WHERE 
    Activity.activationcode = '"+activationcode+"'
 ) up
SET up.st = '"+s+"'

在查询中,您尝试同时更新 APPROVAL和UP 表,这就是为什么会出现错误