再问简单点的

update 2006-11-14 03:02:37
一个处处过程和显示查询结果的问题.
数据库表名:test
字段及内容
id rname
1 张三
2 李四
3 王二

1.asp
<form action="2.asp">
<input name="strWhere" value="id=2">
<input type="submit" value="submit">
</form>

2.asp
<%
strWhere = request("strWhere")
DIM MyComm,MyRst
Set MyComm = Server.CreateObject("ADODB.Command")
with MyComm
.ActiveConnection = DBConn.ResConn 'MyConStr是数据库连接字串
.CommandText = "ac_Search" '指定存储过程名
.CommandType = 4 '表明这是一个存储过程
.Prepared = true '要求将SQL命令先行编译
.Parameters.Append .CreateParameter("@rname",200, 4, 1000)
.Parameters.append .CreateParameter("@strWhere",200,1,1500,strWhere)
Set MyRst = .Execute
end with
if MyRst.state = 0 then '未取到数据,MyRst关闭
rname = -1
else
MyRst.close '注意:若要取得参数值,需先关闭记录集对象
rname = MyComm(0)
MyRst.open
'do until MyRst.EOF
Response.Write rname&"<br>"
'loop
end if
Set MyComm = Nothing
response.write "rname="& rname & "<br>"
%>

存储过程ac_Search:
CREATE PROCEDURE [dbo].[ac_Search]
@strWhere varchar(1500) -- 查询条件 (注意: 不要加 where)
AS
declare @strSQL varchar(5000) -- 主语句
set nocount on
begin
set @strSQL = "select top* from dbo.[test] where " + @strWhere
end
exec (@strSQL)
go

问题:
如何输出"id=2"所对应的"李四"??
感觉上面肯定有不对的,请指教??
...全文
190 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
upload 2007-03-13
  • 打赏
  • 举报
回复
妹妹,再努力学习存储过程啊,检查一下.
update 2006-11-14
  • 打赏
  • 举报
回复
帮忙啊,大哥们,妹妹等着啊,急呢..
update 2006-11-14
  • 打赏
  • 举报
回复
存储过程ac_Search:
上面的没注意写错了,应该是:
CREATE PROCEDURE [dbo].[ac_Search]
@strWhere varchar(1500) -- 查询条件 (注意: 不要加 where)
AS
declare @strSQL varchar(5000) -- 主语句
set nocount on
begin
set @strSQL = "select top 5 * from dbo.[test] where " + @strWhere
end
exec (@strSQL)
go

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧