SQLのテーブルから行を削除する際に問題があります。スキーマの名前は「imageusers」です。 'imageusers'の内部には、imageID、username、imageの3つのカラムを持つ 'images'という名前のテーブルがありますが、imageカラムを無視していますので、その情報を準備しないで行を削除できます。SQLのテーブルから行を削除できない
マイコード:
myConn = DriverManager.getConnection("jdbc:mysql://localhost:3306/imageusers?autoReconnect=true&useSSL=false&relaxAutoCommit=true", "user", "password");
String update = ("DELETE FROM images WHERE imageID = ?, username = ?");
PreparedStatement preparedStatement = myConn.prepareStatement(update);
preparedStatement.setString(1, "image name");
preparedStatement.setString(2, "username");
preparedStatement.executeUpdate();
私は二重のすべてをチェックしています。 myConn接続は有効です。イメージ名とユーザー名の文字列は有効であり、SQLテーブルに存在します。
しかし、私はそれを実行しようとすると、私は次のエラーを取得する:
"com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE imageID = 'image name', username = 'username'' at line 1.
私はオンラインを見て、これはJDBCでSQLから行を削除する正しい方法ですが、それにはないのですか?私が見たすべての例は、このようにしました。私はMySQL Workbenchを実行しています。
ようにあなたが使用する必要がある 'と' の代わりにwhere句にカンマの:IMAGEID =?とusername =? – user2023608