String strSQL="select * from Threads where Subject like @Subject";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "%" + Subject.Text + "%" ;
// 打开连接
cn.Open();
如果改成
String strSQL="select * from Threads where Subject like '@Subject'";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "%" + Subject.Text + "%" ;
// 打开连接
cn.Open();
倒是不报错了,但却查不到数据,请大家指导一下!
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "%" + Subject.Text + "%" ;
// 打开连接
cn.Open();
如果改成
String strSQL="select * from Threads where Subject like '@Subject'";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "%" + Subject.Text + "%" ;
// 打开连接
cn.Open();
倒是不报错了,但却查不到数据,请大家指导一下!
解决方案 »
- LinqToSql的问题 多条件 动态变化查询条件怎样查询
- 求一个小软件,用C#编的,比如小游戏扫雷啊,贪食蛇之类的
- 做一个WF窗体的启动项,就是让这个程序启动的时候首先会有一个图片出来,然后开始程序,后台代码怎么弄啊,前面的视图上需要PictureBox之外还需要什么吗
- ICollection 是什么??
- dataset 的 acceptchanges()
- C# WebService 问题(在线急等)
- 怎么样画填充圆
- 请教vs2005c#开发
- 怎么判断鼠标在移动滚动条?急
- 请问在VS情况下,我用C#写的一个项目,如何生成DLL文件!
- 想问一下关于 JsEncode函数
- 在向表中添加新行的时候,怎么给ID列插入NULL?麻烦高手指点一下
cm.Parameters["@Subject"].Value= Subject.Text ; 你将%增加到参数的值那里肯定有问题的了,在事件探测器中捕获一下运行时的sql语句你就明白了
飞龙兄,like可以使用参数的。楼主这样修改一下:
String strSQL="select * from Threads where Subject like '%'@Subject'%'";
检查过了,都是文本型(access数据库),字长50
系统报错,语法错误 (操作符丢失) 在查询表达式 Subject like '%'@Subject'%'中。
本人也很菜…
我用的是access数据库,不知道怎么使用事件探测器
cm.Parameters["@Subject"].Value= "*" + Subject.Text + "*" ; SQL SERVER 里是用%%的,在ACCESS里是用**号的,肯定找不到数据!
是的,我就是用的oledb这个
string strsql="select * from users where username like @username";
你加参数时要注意顺序
無法在like中添加變量的
在SQL中也無法運行
我用的就是SQL2005+VS2008
是啊,我到网上查了相关资料,应该这样就可以的,不知道为什么到了我这里就是调试不出来!郁闷!难道是access文本型数据跟varchar型数据有冲突?
赋值的时候
Cmd.Parameters["@KeyWord"].Value = "%" + StrKeyWord + "%";
这里应该不是用%
%是SQL的
String strSQL="select * from Threads where Subject like @Subject";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "'%" + Subject.Text + "%'" ;
// 打开连接
cn.Open();
String strSQL="select * from Threads where Subject like @Subject";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters[0].Value= "'%" + Subject.Text + "%'" ;
// 打开连接
cn.Open();
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["Subject"].Value= "%" + Subject.Text + "%" ;
// 打开连接
cn.Open(); 这样试试
但,都试过了,都不行,要么报错说参数没指定值,要么就是查不到数据库里的数据!真的快疯了,邪门儿了简直!
// 创建Command对象cm
OleDbCommand cm=new OleDbCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["Subject"].Value= "%" + Subject.Text.Trim() + "%" ;
// 打开连接
cn.Open(); 我刚刚用ACCESS测试了一下 就这样 可以执行的
con.Open();
string strSql="select * from users where username like @username";
System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand(strSql,con);
cmd.Parameters.Add(new System.Data.OleDb.OleDbParameter("username", "%leo%"));
System.Data.OleDb.OleDbDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
Response.Write(dr[0]);
}
我就这样写的 查出2条记录
{
string sql = "select * from tbUser where name like @Subject";
using (SqlCommand cmd = new SqlCommand(sql, conn))
{
string str = "%" + Label1.Text + "%";
cmd.Parameters.AddWithValue("@Subject", str);
conn.Open();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
sda.Fill(ds);
GridView1.DataSource = ds;
GridView1.DataBind();
}
}
String strSQL="select * from Threads where Subject like '%'+ @Subject+'%'";
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= Subject.Text;
// 打开连接
cn.Open();
http://www.mybuffet.cn
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= Subject.Text;
// 打开连接
cn.Open();
// 创建Command对象cm
SqlCommand cm=new SqlCommand(strSQL,cn);
// 添加一个参数
cm.Parameters.Add(new SqlParameter("@Subject",SqlDbType.NVarChar,40));
// 给参数赋值
cm.Parameters["@Subject"].Value= "*" + Subject.Text + "*" ;
// 打开连接
cn.Open();