注册 登录
编程论坛 ASP.NET技术论坛

[求助]这句话错在哪了?

cobby 发布于 2007-07-16 09:12, 1407 次点击
cmd = New SqlCommand("select * from info where name=' " & Request.QueryString("name") & " '", con)
reader = cmd.ExecuteReader()

我从一个页面传递name字段数据到另一个页面,想从数据库中调出相关信息,结果运行出错。提示是“第 1 行: 'ddd' 附近有语法错误”,其中,‘ddd'是Request.QueryString("name") 的传递值。请大虾帮忙看下这是什么问题?谢谢!
11 回复
#2
川流不息2007-07-16 09:17
("select * from info where name=' " & Request.QueryString("name") & " '",

你把這整個語句打印出來後,和到sql查詢分析器裡面執行一下,就可以看到錯誤是什麼了。
#3
cobby2007-07-16 09:24
这句话在查询分析器中是可以执行的,只是在那里Request.QueryString("name") 没有值,所以结果为空。奇怪了,我想不通这有什么错呀
#4
cobby2007-07-16 09:31
问题找到了,我了一对单引号。如果改成
cmd = New SqlCommand("select * from info where name=" & Request.QueryString("name") & "", con)
就完全没有问题了。不过还是不太懂,数据库中我的name设置为字符串属性,为什么不用加单引号呢?
#5
文绍2007-07-17 22:57
试一试这个:cmd = New SqlCommand("select * from info where name=‘" & Request.QueryString(’name‘) & "’", con)
就是name两边用单撇号,因为实在双撇号中
#6
jyoseyi2007-07-18 17:33
试试这个:
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();

如果还有错误,要么是那个页面的值没有取到.要么就是连接有问题.最好是插个断点调试下.



#7
kuanghai2007-08-28 11:39
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();
这个肯定没错
就看变量Name有没有值
另外要看CON有没有连接便有没有打开
#8
vidhl2007-08-29 08:02
以下是引用jyoseyi在2007-7-18 17:33:00的发言:
试试这个:
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();

如果还有错误,要么是那个页面的值没有取到.要么就是连接有问题.最好是插个断点调试下.



#9
zw3798688722007-09-03 16:11
你的没有前+和后+
=‘" + Request.QueryString(’name‘) +"’
这样就可以了
——周伟
——邮箱:zw_asp.net@163.com
——QQ:379868872
#10
lanye2007-09-03 17:05
人家用的是vb不是c#
#11
梦灵儿2007-09-04 20:32
哈哈搞笑......恩
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();
楼上的楼上的楼上的没错......我也同意.
呵呵在加上一句的是:
要是是int就是这样:"+aa+";
要是是String那么就是这样的:'"+aa+"';
呵呵千万要区分一下:
#12
jimmy10292007-09-17 20:45

哈哈..好像少了一种情况吧?

如果页面输入的值里面有单引号呢?

那样还是会出错哦

1