当我按下一个删除艺术家和所有相关专辑的按钮时,我正在从数据库中删除记录。我有一个专门用于删除单个专辑的按钮,该按钮可以正常工作并删除该专辑。 按下按钮时,Java中出现错误,因此我在phpmyadmin上尝试了此错误,并得到了相同的错误:
在分析过程中发现2个错误。
意外的关键字。 (在“ FROM”附近的位置32) 无法识别的语句类型。 (在“ FROM”附近的位置32)
我正在使用XAMPP v3.2.2
可删除相册的SQL查询:
"DELETE FROM album WHERE album.albumID = '"+ albumID+ "';";
在Java和phpmyadmin中都不起作用并产生错误的查询:
"DELETE FROM collection,artist FROM collection LEFT JOIN artistAlbum ON collection.albumID = artistAlbum.albumID LEFT JOIN artist on artist.artistID = artistAlbum.artistID WHERE artist.artistID = '"+artistID+"' AND collection.userID ='"+databaseTest.userLoggedIn()+"';";
我确保在phpmyadmin中打印出值并使用了实际值。
答案 0 :(得分:3)
您不能有两个FROM
子句。如果要使用联接进行删除,请在FROM
关键字的之前列出要删除的表。
"DELETE collection,artist
FROM collection
LEFT JOIN artistAlbum ON collection.albumID = artistAlbum.albumID
LEFT JOIN artist on artist.artistID = artistAlbum.artistID
WHERE artist.artistID = '"+artistID+"' AND collection.userID ='"+databaseTest.userLoggedIn()+"';";