我尝试在SQL中使用相同的bookID
和userID
删除一行,但是由于我的bookID
用双引号保存,因此正常删除将不匹配。我该怎么办?谢谢。
String deleteString = "DELETE FROM booksFavourite WHERE userID=? AND bookID=?;";
try {
conn = DriverManager.getConnection("someLink");
ps = conn.prepareStatement(deleteString);
ps.setInt(1, userID);
ps.setString(2, bookID);
int r = ps.executeUpdate();
}//try
...
您可以调整bookID
,使其与您的参数匹配。
String deleteString = "DELETE FROM booksFavourite WHERE userID=? AND trim(both '\"' from bookID)=?;";
或
您可以在参数上将concat
"
匹配到bookID上>]
String deleteString = "DELETE FROM booksFavourite WHERE userID=? AND bookID=concat('\"', ?, '\"');";