从数据库中删除列

时间:2013-08-13 06:46:18

标签: java database

我有一个包含很多值的数据库。如何使用查询删除指定的行。

我正在使用以下查询进行删除。我想在colum name = user_name的帮助下删除一行。(user_name = example)。

但是在table.is上没有显示名为row的示例。它显示error.Any if exist查询此

 preparedStatement = (PreparedStatement) connection.prepareStatement("DELETE FROM users  WHERE IF EXISTS user_name=example");
         preparedStatement.executeUpdate();

尝试编译时出现以下错误

 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 'EXISTS user_name='example'' at line 1

3 个答案:

答案 0 :(得分:4)

  • 删除IF EXISTS
  • 使用user_name='example'(带引号)或更好user_name=?与PreparedStatement
  • 使用preparedStatement.executeUpdate()

即使没有结果也不应该抛出任何错误

答案 1 :(得分:0)

我想你只是忘记了跨越String字面'示例'的叛逆者:

DELETE FROM users WHERE user_name='example'.

这里不需要'WHERE EXISTS'!

问候

克里斯托弗

答案 2 :(得分:0)

我在电脑里试过这种方式并且工作正常

PreparedStatement pt =con.prepareStatement("DELETE FROM users  WHERE IF EXISTS user_name='"+"example'");
pt.executeUpdate();

我制作了一张临时表并运行它