标题:[求助]这句话错在哪了?
只看楼主
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
 问题点数:0 回复次数:11 
[求助]这句话错在哪了?
cmd = New SqlCommand("select * from info where name=' " & Request.QueryString("name") & " '", con)
reader = cmd.ExecuteReader()

我从一个页面传递name字段数据到另一个页面,想从数据库中调出相关信息,结果运行出错。提示是“第 1 行: 'ddd' 附近有语法错误”,其中,‘ddd'是Request.QueryString("name") 的传递值。请大虾帮忙看下这是什么问题?谢谢!
搜索更多相关主题的帖子: 数据库 name ddd cmd QueryString 
2007-07-16 09:12
川流不息
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:2000
专家分:47
注 册:2006-11-8
得分:0 
("select * from info where name=' " & Request.QueryString("name") & " '",

你把這整個語句打印出來後,和到sql查詢分析器裡面執行一下,就可以看到錯誤是什麼了。

日月更替,天地輪回,人間已是幾回春。 江山不老,人正少年,只手能擎半邊天。
2007-07-16 09:17
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
得分:0 
这句话在查询分析器中是可以执行的,只是在那里Request.QueryString("name") 没有值,所以结果为空。奇怪了,我想不通这有什么错呀

努力成为菜鸟!
2007-07-16 09:24
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
得分:0 
问题找到了,我了一对单引号。如果改成
cmd = New SqlCommand("select * from info where name=" & Request.QueryString("name") & "", con)
就完全没有问题了。不过还是不太懂,数据库中我的name设置为字符串属性,为什么不用加单引号呢?

努力成为菜鸟!
2007-07-16 09:31
文绍
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-7-17
得分:0 
试一试这个:cmd = New SqlCommand("select * from info where name=‘" & Request.QueryString(’name‘) & "’", con)
就是name两边用单撇号,因为实在双撇号中
2007-07-17 22:57
jyoseyi
Rank: 1
等 级:新手上路
帖 子:173
专家分:0
注 册:2007-6-14
得分:0 
试试这个:
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();

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




我非英雄,广目无双, 我本坏蛋,无限嚣张!
2007-07-18 17:33
kuanghai
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2007-5-12
得分:0 
string Name= Request.QueryString("name");
SqlCommand cmd = New SqlCommand("select * from info where name='"+Name+"', con);
reader = cmd.ExecuteReader();
这个肯定没错
就看变量Name有没有值
另外要看CON有没有连接便有没有打开
2007-08-28 11:39
vidhl
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2007-8-27
得分:0 
以下是引用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();

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




2007-08-29 08:02
zw379868872
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-6-25
得分:0 
你的没有前+和后+
=‘" + Request.QueryString(’name‘) +"’
这样就可以了
——周伟
——邮箱:zw_asp.net@163.com
——QQ:379868872

眼见为实,耳听为虚 技术+学历+口才=成功 我的qq是379868872
2007-09-03 16:11
lanye
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-5-16
得分:0 
人家用的是vb不是c#

爱兰烨!
2007-09-03 17:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-155630-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.403619 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved