ASP中怎样调用两个表中的数据

我一个表PRO存放:产品名字(Title)路径(pic)类型ID(typeid)另一个表Type存放:产品类型ID(和表Pro中的Typeid对应)我现在是在后台想把产品... 我一个表PRO 存放:产品名字(Title) 路径(pic) 类型ID(typeid)
另一个表Type存放:产品类型 ID(和表Pro中的Typeid对应)

我现在是在后台想把产品列出来!
产品名称 产品类别

可出现错误 产品类别是固定的一个,我不知道怎样再加代码了! 大家说下

用的主要代码如下:
sql="select products.title as products_title,products.typeid as products_typeid,type.id as type_id,type.type as type_type from products,type "
set rs=server.CreateObject("ADODB.RECORDSET")
rs.open sql,conn,1,1

%>
<td width="60%" height="25" align="center" valign="middle" class="tb">产品名称</td>
<td width="20%" align="center" valign="middle" class="tb">所属栏目</td>

</tr>
<tr>

<% i=1
do while not rs.eof%>
<tr>
<td width="60%" height="30" align="left" valign="middle">  <%=rs("products_title")%></td>
<td width="153" align="center" valign="middle">
<%=rs("type_type")%>

</td>
<td width="20%" align="center" valign="middle"> <a href="soft_del.asp?id=" ONCLICK="javascript:return confirm('提示:您确定要继续执行该操作吗?')">删除</a></td>
</tr>
<%
i=i+1
if i>3 then exit do
rs.movenext
loop%>

那位哥们,姐妹说下啊,谢谢了!
哥哥啊,你真神人,就是这个问题! 你一试可好了,呵呵!

我问下 inner join type on products.Typeid=type.id 是什么意思
展开
 我来答
myccc56789
2008-08-11
知道答主
回答量:20
采纳率:0%
帮助的人:0
展开全部
是不是你的数据表没有设置主键的问题。
我建议你的数据PRO表和Type表增加1列名为“id”这一列做为主键,自动增加为1
也就是说第一条数据这个id就是1第二条就是2第三条3。这样功能。
然后读数据的时候根据这一列由大到小意思就是后添加的(也就是时间有现在到以前的方案读)
具体应该是
首先要设置conn,否则数据库不会启动连接
比如conn=(有一系列的帐号密码进行连接,如果acc数据库应该不用设置
先设置set rs1读PRO数据,如果不增加ID列那就用typeid
set rs1=server.CreateObject("ADODB.RECORDSET")
sql="select * from PRO order by id(或用typeid不用改表) desc
rs1.open conn,1,1
这样就读取了PRO的表
然后把数据显示到网上
在显示在网上的的期间再根据PRO表里的typeid读取Type表;
我还是给你写代码吧:
<%
set rs1=server.CreateObject("ADODB.RECORDSET")
sql1="select * from PRO order by typeid desc"
rs1.open sql1,conn,1,1
do whlie not rs1.eof
set rs2=server.CreateObject("ADODB.RECORDSET")
sql1="select * from Type where ID='"&rs1("Typeid")&"'"
rs2.open sql2,conn,1,1
%>
<table>
<tr>
<td>产品名字</td><td>路径</td><td>类型</td>
</tr>
</table>
<table>
<tr>
<td><%=rs1("Title")%></td><td><%=rs1("Pic")%></td><td><%=rs2("ID")%></td>
</tr>
</table>
<%rs2.close
set rs2=nothing
rs1.movenext
loop
rs1.close
set rs1=nothing
%>
以上代码应该就可以把两个表中的数据读出来
但告诉你个问题是你在Type表中应该再添加一列的。
PRO的Typeid和Type的ID对应但对应的这一行中应该有其他要读出来的信息吧。
好的不懂可以再问。或给我发消息。问题就是你没把问题说清楚。我也不知道你的数据库结构是怎么样的。写程序数据库设计很重要。
FantasyChump
2008-08-11 · TA获得超过3287个赞
知道大有可为答主
回答量:2127
采纳率:0%
帮助的人:2226万
展开全部
把两张表联合查询一下。

sql="select products.title as products_title,products.typeid as products_typeid,type.id as type_id,type.type as type_type from products inner join type on products.Typeid=type.id"

--------------------------------------------
Inner JOin ... ON 是说按照 ON 后面的关系式将前面两张表的数据对应起来,学名叫做联合查询。这里的意思就是 主表是 Products,然后由 Products.Typeid 在 type 表中查找对应id 的那列数据,并关联起来。
如果还想更深入了解,可以再搜索一下。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式