2012-09-07 46 views
-1

如何使用where clause.i编写select语句来与字符串值进行比较。在C#中使用where子句选择语句

我尝试这样做:

string get_dropdown_value = dropdown_category.SelectedItem.Value; 

...但它给了我这个错误:

Invalid column name 'get_dropdown_value'. 
+2

你必须表现出比多一点点的代码,这是选择的数据库?哪个版本/ RDBMS? select语句是什么样的?表模式是什么样的。 –

回答

0

你必须表现出你正在使用的select语句。我怀疑你做了这样的事情:

string selectStatement = "SELECT * FROM SOME_TABLE WHERE SOME_COLUMN = get_dropdown_value"; 

虽然它应该是这样的:

string selectStatement = "SELECT * FROM SOME_TABLE WHERE SOME_COLUMN = " + get_dropdown_value; 

编辑:正如其他人所提到的,这是容易出现SQL注入。所以,你可能想要使用SqlParamter(假设你正在使用SQL)。

+3

SQL注入。广泛的开放SQL注入。相反,请使用参数化查询。 –

+1

您可能想要修改此答案以使用命令和参数,以避免SQL注入攻击:http://xkcd.com/327/ – Dan

+0

@Dan +1表示该xkcd。我应该在原来的文章中指出这一点。 :doh: – danish

0

试试这个代码

insted的的

string get_dropdown_value = dropdown_category.SelectedItem.Value; 

string get_dropdown_value = dropdown_category.SelectedItem.Text;