关于从两个数据库不同的表中读取数据问题???
如下SQL语句:SELECT*FROMGlobal_UserWHERECompanyID=1Global_User表是在数据库1里的。再从上面查询的结果里再执行下面的语句...
如下SQL语句: SELECT * FROM Global_User WHERE CompanyID = 1 Global_User表是在数据库1里的。 再从上面查询的结果里再执行下面的语句: and Global_User.UserID not in (select UserID from TranTX_User ) 而TranTX_User是在数据库2里。 怎么才能很好的执行上面的操作呀? 最好是能帮我把怎么个语句写出来,问题解决马上给分。拜托大家了。
展开
3个回答
2013-11-10
展开全部
创建dblink分为两个步骤: 1.建立本地服务名 2.-- Create database link create database link TEST.US.ORACLE.COM connect to user identified by pwd using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = IP)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) ) '; 曾经参考语句: CREATE DATABASE LINK数据库链接名CONNECT TO 用户名 IDENTIFIED BY 密码 USING ‘数据库连接字符串’; 数据库连接字符串可以用NET8 EASY CONFIG或者直接修改TNSNAMES.ORA里定义. 数据库参数global_name=true时要求数据库链接名称跟远端数据库名称一样 数据库全局名称可以用以下命令查出 SELECT * FROM GLOBAL_NAME; 查询远端数据库里的表 SELECT …… FROM 表名@数据库链接名; 附带说下同义词创建: CREATE SYNONYM同义词名FOR 表名; CREATE SYNONYM同义词名FOR 表名@数据库链接名;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-10
展开全部
上面这位兄弟,你这样写SQL语句,看上去可行,但是你怎么数据库连接呀, 就是怎么去写: "server=localhost;database=111;uid=sa;pwd=; " "server=localhost;database=222;uid=sa;pwd=; " conn.open(); 这里有两个数据库连接,怎么打开数据库连接呀?难道写两个conn.open(); ================================================================== 一个连接就可以了啊 你在查询分析器里做一下,如果能通过的话程序里也一定能通过。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-11-10
展开全部
SELECT * FROM database.dbo.Global_User WHERE CompanyID = 1 and UserID not in (select UserID from database2.dbo.TranTX_User ) 有些兄弟说用上面的方法,那你们怎么去连接数据库,就是你怎么去开打两个数据库呀。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询