| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 731 人关注过本帖
标题:[求助]asp+MYSQL多表查询问题
只看楼主 加入收藏
soullei
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-11
收藏
 问题点数:0 回复次数:2 
[求助]asp+MYSQL多表查询问题

有如下三个表

表一:employe

No Name tel

1 张三 00000000

表二:nodes

No name tel

101 北京 11111111

表三:ordertrack

Order_id OperDT OperNode NextNode Operator Descr

1111 时间 101 102 1 1

其中 nodes.No=ordertrack.OperNode employe.No=ordertrack.Operator

通过查询 表三中的 Order_id 得到如下结果

Order_id OperDT nodes.name NextNode employe.name employe.tel
1111 时间 北京 102 张三 00000000

————————————————————————————————————

先看下我写的语句
Order_id=Request("Order_id")
strQuery = "SELECT * FROM (ordertrack as aa inner join nodes as bb on aa.OperNode = bb.No) inner join employe as cc on aa.Operator = cc.No WHERE Order_id='"&Order_id&"'"

以上语句查询无误,但是是用SELECT * ,所以显示结果的时候 nodes和employe中都有name和tel 字段,当rs("name")和rs("tel")时都显示的是employe表中的name和tel

————————————————————————————————————
所以我用别名进行区分,将* 换为具体字段并加以别名

strQuery = "SELECT ordertrack.Order_id, ordertrack.OperDT, ordertrack.OperNode, ordertrack.NextNode, ordertrack.Operator, ordertrack.Descr, nodes.name as bname, employe.name as cname, employe.tel as ctel FROM (ordertrack as aa inner join nodes as bb on aa.OperNode = bb.No) inner join employe as cc on aa.Operator = cc.No WHERE Order_id='"&Order_id&"'"

然后 读取的时候
rs("Order_id") rs("OperDT") rs("bname") rs("NextNode") rs("cname") rs("ctel")

bname cname ctel 采用别名进行读取


可是通不过

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[MySQL][ODBC 3.51 Driver][mysqld-4.1.22-community-nt]Unknown table 'ordertrack' in field list
/list.asp, 第 16 行

第16行是 Set rs = adoDataConn.Execute(strQuery)


请问这是什么错误?是SQL语句的问题吗?
请高手指教!多谢!着急,在线等!QQ 401703331 多谢多谢!

搜索更多相关主题的帖子: MYSQL 北京 Order employe asp 
2007-05-12 12:36
islet
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:89
帖 子:6548
专家分:0
注 册:2005-1-28
收藏
得分:0 
sql="select Order_id,OperDT,nodes.name,NextNode,employe.name,employe.tel from ordertrack,employe,nodes where nodes.No=ordertrack.OperNode and employe.No=ordertrack.Operator and Order_id='"&Order_id&"'"
2007-05-12 14:07
soullei
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2007-5-11
收藏
得分:0 

谢谢 楼上正解
strQuery="select Order_id,OperDT,Descr,nodes.name as bname,NextNode,employe.name as cname,employe.tel as ctel from ordertrack,employe,nodes where nodes.No=ordertrack.OperNode and employe.No=ordertrack.Operator and Order_id='"&Order_id&"'"

rs("Order_id") rs("OperDT") rs("bname") rs("NextNode") rs("cname") rs("ctel")

可以了 再次感谢

2007-05-12 14:51
快速回复:[求助]asp+MYSQL多表查询问题
数据加载中...
 
   



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

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