我有两个表,T_A和T_B,都有一个相同名字的字段KEY_NAME,我使用SQL语句是
SELECT * FROM T_A,T_B WHERE T_A.KEY_NAME=T_B.KEY_NAME,我用ADO连接ACCESS,能够查询到正确结果,可是如果连接SQL Sever,就会出现错误。请问这个SQL语句在SQL Server中有什么错误吗??
SELECT * FROM T_A,T_B WHERE T_A.KEY_NAME=T_B.KEY_NAME,我用ADO连接ACCESS,能够查询到正确结果,可是如果连接SQL Sever,就会出现错误。请问这个SQL语句在SQL Server中有什么错误吗??
指定具体要查询的字段
问题不是在语句,而是你的数据库。
检查你的数据库是否建SQL服务器中?
其中有两个表T_A和T_B,
T_A有字段 WORKER_ID,WORKER_NAME,KEY_NAME
T_B有字段 MEA_ID,MEA_VALUE,MEA_LOCATION,KEY_NAME,我想根据T_B的MEA_ID获取两个表的内容,并显示出来。
我的SELECT语句是 SELECT * FROM T_A,T_B WHERE MEA_ID=‘12580’ AND T_A.KEY_NAME=T_B.KEY_NAME
程序使用ADO连接数据库,在使用ACCESS数据库的时候正常,但是使用SQL Server就不行,_Recordset在open的时候出错。而我查询单个的T_A和T_B的时候都可以得到结果,应该可以认为数据源是没问题的吧。
我也试过SELECT T_A.* FROM T_A,T_B WHERE T_A.KEY_NAME=T_B.KEY_NAME,也会出错。真是搞不懂了。
你打开sql 事件探查器 跟踪看看 是不是程序传入语句有问题?
单个table的KEY_NAME当然没有问题。
语句没问题
问题出在程序中取字段KEY_NAME时不知道取哪个T_A.KEYNAME还是T_B.KEYNAME