我如果是这样的话就可以:
string id = Request.Cookies["id"].Value;
//access 数据源控件的SelectCommand的后台绑定.
AccessDataSrc.SelectCommand = "select * from [t_man] where [id][email protected]";
AccessDataSrc.SelectParameters.Clear(); //清除可能已有选择参数.
AccessDataSrc.SelectParameters.Add("id", TypeCode.Int32, id);
AccessDataSrc.DataBind();
这是数字类型的,没有问题.
但是对于字符串类型怎么不行:
string name = txtName.Text.Trim();
AccessDataSrc.SelectCommand = "select * from [t_man] where [name] like [email protected]%'";
AccessDataSrc.SelectParameters.Clear(); //清除可能已有选择参数.
AccessDataSrc.SelectParameters.Add("@name", TypeCode.String, name);
AccessDataSrc.DataBind();
而当我不使用添加参数的方法,又行:
string name = txtName.Text.Trim();
AccessDataSrc.SelectCommand = "select * from [t_man] where [name] like '%" +name + "%'";
AccessDataSrc.SelectParameters.Clear(); //清除可能已有选择参数.
AccessDataSrc.SelectParameters.Add("@name", TypeCode.String, name);
AccessDataSrc.DataBind();
难道我的sql语句不对?
asp.net没有提示什么.
但是添加方式的方法,又不能查看整个sql语句的结果,怎么办?
------解决思路----------------------
不用加单引号,select * from [t_man] where [name] like @name