Mysql 如何防止一个sql表在更新另一个表时受到影响

Mysql 如何防止一个sql表在更新另一个表时受到影响,mysql,Mysql,这是我的密码。我尝试更新一个表,但另一个表受到影响 String update_sql = "UPDATE EMPLOYEES SET FIRST_NAME=?, LAST_NAME=?, EMAIL=?, PHONE_NUMBER=?, HIRE_DATE=?, JOB_ID=?, MANAGER_ID=?, DEPARTMENT_ID=? WHERE EMPLOYEE_ID=?"; PreparedStatement ps_one =

这是我的密码。我尝试更新一个表,但另一个表受到影响

String update_sql = "UPDATE EMPLOYEES SET FIRST_NAME=?, LAST_NAME=?,     EMAIL=?, PHONE_NUMBER=?, HIRE_DATE=?, JOB_ID=?, MANAGER_ID=?, DEPARTMENT_ID=? WHERE EMPLOYEE_ID=?";
                        PreparedStatement ps_one = connection.prepareStatement(update_sql);
                        ps_one.setString(1, FirstName);
                        ps_one.setString(2, LastName);
                        ps_one.setString(3, Email_final);
                        ps_one.setString(4, PhoneNumber);
                        ps_one.setDate(5,sqlDate);
                        ps_one.setString(6, Job);
                        ps_one.setInt(7, Manager_final);
                        ps_one.setInt(8, Department_final);
                        ps_one.setInt(9, id_final);
                        ps_one.executeUpdate();

我从另一个表中得到了该错误。

在Employees表上定义了一个触发器,用于任何更新操作。检查为什么需要GAS.UPDATE\u JOB\u历史记录并且失败。如果没有触发器,对一个表所做的更新不会影响另一个表。更新可能仍然会失败,因为它们不满足某个其他表的约束,但如果没有明确定义的触发器,则无法更新其他表。在每行之后更新\u作业\u历史记录GAS更新启用的员工,这是触发器foundTRIGGER GAS。更新作业\u id之后更新作业\u历史记录,每行员工的部门id开始添加工作历史:old.employee\u id、:old.hire\u date、sysdate、:old.job\u id、:old.department\u id;终止这是触发器的代码
ORA-02290: check constraint (GAS.JHIST_DATE_INTERVAL) violated
ORA-06512: at "GAS.ADD_JOB_HISTORY", line 10
ORA-06512: at "GAS.UPDATE_JOB_HISTORY", line 2
ORA-04088: error during execution of trigger 'GAS.UPDATE_JOB_HISTORY'