删除多条记录的查询错误

时间:2014-03-27 05:47:34

标签: mysql

我在此查询中遇到问题:

string sqlString = "DELETE FROM [upload_news] WHERE (SELECT TOP " + no_of_recordss + " * FROM [upload_news] WHERE [country]='" + countryy.Text + "')";

错误讯息:

  

错误:{“在上下文中指定的非布尔类型的表达式   在预期条件的地方,''附近。“}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

在where子句中,您需要一个布尔表达式。 而且,mysql不支持select top,你必须使用limit而你可以直接在删除时使用它

所以你的查询应该是:

delete from upload_news 
    where country=<SOME_COUNTRY> limit <NO_OF_RECORDS>

您必须更换&#34;&lt;&gt;&#34;中的值用你想要的价值观。

或者在你的&#34;奇怪的&#34;语法:

string sqlString = "DELETE FROM [upload_news] WHERE [country]='" + countryy.Text + "' limit "+no_of_recordss;