读书人

gridview显示数据的sql语句有关问题

发布时间: 2012-03-16 16:34:56 作者: rapoo

gridview显示数据的sql语句问题
功能是查询,有一个dropdownlist--DDLSearch,textbox--TBSearch
现在textbox中输入关键字,dropdowlist选择相应的值,比如bookname等,实现分类查询,语句如下
string sql = "SELECT book_name,writer,price FROM book WHERE " + " ' " + DDLsearch.SelectedValue.Trim() + " ' " + "LIKE @insert1 ";
若将DDLsearch.SelectedValue.Trim() 改为bookname等是可以实现查询的,但用它后却什么也查不到,为什么?
两个变量不能同时应用吗?
怎样实现类似功能的查询?
不用为dropdownlist的value分别写几个事件吧?



[解决办法]
string sql = "SELECT book_name,writer,price FROM book WHERE " + " ' " + DDLsearch.SelectedValue.Trim() + " ' " + "LIKE @insert1 ";
语句有问题吧:
string sql = "SELECT book_name,writer,price FROM book WHERE " + DDLsearch.SelectedValue.Trim() + "LIKE @insert1 ";

DDLsearch.SelectedValue.Trim()是不是表中的字段名啊


[解决办法]
你的SQL要这样写:
Search tbsearch 是数据库字段名称
string sql = "select * from book where Search = ' "+DDLsearch.SelectedValue.Trim()+ " ' and tbsearch like '% "+TBSearch.text.tostring()+ "% ' ";

[解决办法]
如果DDLsearch.SelectedValue.Trim()是字段名的话,应该用以下这种写法:
string sql = "SELECT book_name,writer,price FROM book WHERE ' " + DDLsearch.SelectedValue.Trim() + " ' LIKE '% " + @insert1 + " ' ";


[解决办法]
上面写错了,不好意思,应该这样:
如果DDLsearch.SelectedValue.Trim()是字段名的话,应该用以下这种写法:
string sql = "SELECT book_name,writer,price FROM book WHERE " + DDLsearch.SelectedValue.Trim() + " LIKE '% " + @insert1 + " ' ";
[解决办法]
为什么又用拼接字符串,又用参数,这种写法超不规范
[解决办法]
caowenkai() 正解
[解决办法]
字段名不需要引号,去掉引号就可以了。

string sql = "SELECT book_name,writer,price FROM book "
+ " WHERE " + DDLsearch.SelectedValue.Trim() + "LIKE @insert1 ";

读书人网 >asp.net

热点推荐