请教一个关于SQL的问题 (100分)

  • 主题发起人 主题发起人 nhjoy
  • 开始时间 开始时间
N

nhjoy

Unregistered / Unconfirmed
GUEST, unregistred user!
我用的是WIN2000+DELPHI6+ADO+ACCESS2000
我想用这句SQL,
select a.field1,a.field2,a.field3,b.field2,b.field3 from table1 as a left join table2 as b on a.field1=b.field1
但通不过是否ACCESS不支持这句
我在PARADOX里面可能通过的。如果是这样那如何实现我这个查询。
 
将Table1/2后的AS去除
 
应该不是语法问题,有没有as倒无所谓的
 
同意 hclee 的意见
 
select a.field1,a.field2,a.field3,b.field2,b.field3
from table1 as a left join table2 as b on a.field1=b.field1

delphi6+BDE+Access2002通过,没问题!看你SQL中有没有笔误?!
 
哦,BDE可以啊,那ADO行吗/
我用的就是ADO通不过。
 
最后我试过了
select a.field1,a.field2,a.field3,b.field2,b.field3 from table1 as a inner join table2 as b on a.field1=b.field1
这样就可以关键之处是:inner join
而改成 full join ,left join ,right join 都不行这是怎么回事.
谁来救救我啊?
 
我的ACCESS根本不支持外联!!!

可能要装个什么DLL才支持吧,帮助中说有的某个什么功能要某个DLL文件,
我是完全安装的,但还是不支持!
 
这好像都是通用的应该可以
 
各位大侠:到底你们有没有人试过用ADO+ACCESS
做LEFT JOIN 或FULL JOIN 的多表外键连接而成功的SQL语句。
请给出一个例子成功通过后当然所有分数归你。
我可以再加500分。
 
select a.*, b.slyear, b.djh, b.djst, b.opname, b.tsr_name, b.bts_name,
b.tsfw, b.tsxz, b.slfs as tslb, b.tsbm
from recidx a left join tscld b
on a.rno=b.rno
这是在D6+ADO+ACCESS环境下使用的,上述语句已用到产品中;与ACCESS环境似乎没什么
关系,就算用户系统上不装ACCESS,一样可以使用。(我们的产品只要求用户安装Win98
或以上即可)。
如再不行,将你使用的表单及语句贴出来看看。
 
另外,在TABLE1/2之后加不加AS是无所谓的,但如果重命名字段名,则一定要加AS,否同
将出错。
 
裝個MSDE吧,問題就解決了
 
后退
顶部