Java 要从Access中的多个表中删除的查询
我想从Access数据库的多个表中删除一行 这是我试图在我的项目中使用的代码,但我遇到了一个错误Java 要从Access中的多个表中删除的查询,java,ms-access,jdbc,ms-access-2007,ms-access-2010,Java,Ms Access,Jdbc,Ms Access 2007,Ms Access 2010,我想从Access数据库的多个表中删除一行 这是我试图在我的项目中使用的代码,但我遇到了一个错误 PreparedStatement ps = con.prepareStatement("DELETE FROM 'customer_details' , 'papers', 'magzines' WHERE 'customer_id' = ? "); ps.setString(1,tx1.getText()); int string = ps.executeUpdate(); 有人能帮我解
PreparedStatement ps = con.prepareStatement("DELETE FROM 'customer_details' , 'papers', 'magzines' WHERE 'customer_id' = ? ");
ps.setString(1,tx1.getText());
int string = ps.executeUpdate();
有人能帮我解决这个问题吗?我刚刚尝试了以下方法,效果很好:
stringsql=
删除t1.*、t2.*、t3.*+
“来自”+
"(" +
“表1为t1”+
“内部联接”+
“表2为t2”+
“在t2.ID=t1.ID上”+
")" +
“内部联接”+
“表3为t3”+
“在t3.ID=t2.ID上”+
“其中t1.ID=?”;
ps=con.prepareStatement(sql);
ps.setInt(1,4);//删除ID=4的位置
int n=ps.executeUpdate();
因此,在您的情况下,尝试以下方法:
PreparedStatement ps=con.PreparedStatement(
删除c.*,p.*,m.*+
“来自”+
"(" +
“客户_详细信息为c”+
“内部联接”+
“作为p的文件”+
“在p.customer\u id=c.customer\u id上”+
")" +
“内部联接”+
“作为m的magzines”+
“在m.customer\u id=p.customer\u id上”+
“其中c.customer_id=?”;
ps.setString(1,tx1.getText());
int n=ps.executeUpdate();
您遇到了哪一个错误?您正在为DELETE子句提供字符串。删除单引号。fasdfjasfdka dsaf asdf