一个页面,ASP调用两个表的内容 30

<%setrs=server.createobject("adodb.recordset")sql="select*fromshop_shoporderbyiddesc"... <%
set rs=server.createobject("adodb.recordset")
sql="select * from shop_shop order by id desc"
rs.open sql,conn,1,1
do while not rs.eof
%>
<%=rs("jb1")%><%
set rs1=conn.execute("select * from shop_shop2 where jb="&rs("jb1")&"")
response.write rs1("pmc")
rs1.close
set rs1=nothing
%>
<%
rs.movenext
if rs.eof then exit do
loop
rs.close
set rs=nothing
%>
总说错误类型:
Microsoft JET Database Engine (0x80040E07)
标准表达式中数据类型不匹配。
/f/lexusm/down1.asp, 第 16 行
其它最主要的目的是把产品图片,说明放在shop_shop中,相关下载放在shop_shop2中,当点击具体一个产品时,就出现我产品图片,产品说明,还有对应该的相关下载。
谢谢
jb和jb1都为文本型,当我都改为数字型,是可以实现的,但我得用文本型,不然影响其它功能!
在这个下面实现:
<%
id=cint(Request.Querystring("id"))
set rs1=server.createobject("adodb.recordset")
sqltext="select * from shop_shop Where id="& id &""
rs1.open sqltext,conn,1,1
%>

<img src="<%=rs1("pic")%>"
<%=rs1("content")%>
<!--#include file="down1.asp"-->
<%rs1.close()
set rs1=nothing%>
注:<%
set rs=server.createobject("adodb.recordset")
sql="select * from shop_shop order by id desc"
rs.open sql,conn,1,1
do while not rs.eof
%>
<%=rs("jb1")%><%
set rs1=conn.execute("select * from shop_shop2 where jb="&rs("jb1")&"")
response.write rs1("pmc")
rs1.close
set rs1=nothing
%>
<%
rs.movenext
if rs.eof then exit do
loop
rs.close
set rs=nothing
%>
是放在down1.asp中
最主要的目的是把“产品图片”和“产品说明”放在shop_shop中,“相关下载的内容”放在shop_shop2中,当点击具体一个产品时,就出现我“产品图片”,“产品说明”,还有对应该的“相关下载”。
展开
 我来答
tz6060996
2009-11-06 · TA获得超过2282个赞
知道大有可为答主
回答量:1171
采纳率:100%
帮助的人:1620万
展开全部
rs每条记录都要去查询取得rs1,这样的做法程序效率太低了。大体上看了一下代码,觉得可以用一条sql语句两表关联就可以搞定。
sql="SELECT shop_shop2.pmc FROM shop_shop INNER JOIN shop_shop2 ON shop_shop.jb1 = shop_shop2.jb order by shop_shop.id desc"

后面只要循环rs就可以了
rs.open sql,conn,1,1
do while not rs.eof
response.write rs("pmc")
rs.movenext
loop
rs.close
set rs=nothing

因为没有库结构,SQL没经过测试。
化学灌浆
2009-11-07 · 超过84用户采纳过TA的回答
知道小有建树答主
回答量:386
采纳率:0%
帮助的人:0
展开全部
where jb="&rs("jb1")&"" 如果jb1是字符串 应该加单引号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qqaskchaohui
2009-11-06
知道答主
回答量:28
采纳率:0%
帮助的人:0
展开全部
set rs1=conn.execute("select * from shop_shop2 where jb="&rs("jb1")&"")
这里的jb如果是字符串的话,就该成:set rs1=conn.execute("select * from shop_shop2 where jb='"&rs("jb1")&"'")
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式