textBox1.Text=admin;
string name = textBox1.Text.Trim();
我要查询表user中跟name相同的值,用以下方法查询不到任何结果,为何?
SELECt user_id, user_name, user_password
FROM [user]
WHERe (user_name = '"+name+"')
user_name字段是varchar类型
C#中sql command写错
答案:6 悬赏:0 手机版
解决时间 2021-06-01 00:48
- 提问者网友:蓝琪梦莎
- 2021-05-31 08:09
最佳答案
- 五星知识达人网友:渊鱼
- 2021-05-31 08:43
你在sql server 的查询分析器里这样写当然有问题咯 "+ name +”,表示这个name的变量传值进去,在C#中这样写就没问题了。
全部回答
- 1楼网友:渊鱼
- 2021-05-31 14:31
textBox1.Text=admin;
string name = textBox1.Text.Trim();
String mySql="SELECt user_id, user_name, user_password FROM user WHERe user_name ='"+name+"'";
- 2楼网友:老鼠爱大米
- 2021-05-31 12:56
你别名 还没填吧
- 3楼网友:毛毛
- 2021-05-31 11:55
WHERe (user_name = '"+name+"')
不要加() where user_name = '"name"'
- 4楼网友:毛毛
- 2021-05-31 11:22
不知道你用的什么版本的SQL 但是SQLServer2005中的SQL语句是这样的
SELECt user_id, user_name, user_password FROM [user] WHERe (user_name = 'name') 你这里为什么name的前后要加上 +name+而且似乎是不用括号的
还有问题的话加我QQ 243785002 一起研究
- 5楼网友:春色三分
- 2021-05-31 10:11
在SQL中对于varchar类型的条件是这样的:select * from user where userId='admin'
注意这里有个单引号。
在程序中如果要用变量来拼接SQL语句的话,可以这样写:
string name = textBox1.Text.Trim();
string sql="SELECt user_id, user_name, user_password FROM [user] WHERe user_name = '"+name+"'"
变量的前后要用单引号包起来。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯