在DB2的过程中从另一个数据库获取数据

时间:2018-11-29 14:43:19

标签: database select stored-procedures db2

我有两个数据库DB1和DB2,我想在DB1中调用存储过程并从DB2获取数据。

 Create procedure diffdbtest()
 LANGUAGE SQL
 DYNAMIC RESULT SETS 1
 BEGIN
 DECLARE C1 CURSOR WITH RETURN FOR
 SELECT * FROM Db2.myschema.tabletest;
 OPEN C1
 END@

我没有定义Db2.myschema.tabletest。

两个数据库具有相同的用户名和密码(如果可能,我如何使用不同的用户?)

有什么想法吗?

运行DB2 Express v10.5 Windows

谢谢。

1 个答案:

答案 0 :(得分:1)

据我所知,唯一的方法是必须使用联合身份验证。您需要:

创建服务器包装到DB#2 在引用表tabletest的表上创建昵称 创建用户映射 等

然后,您可以通过昵称访问该表。 有关如何执行此操作的详细信息,请参见知识中心:https://www.ibm.com/support/knowledgecenter/en/SSEPGG_11.1.0/com.ibm.data.fluidquery.doc/topics/tlsdb201.html

希望这会有所帮助。

Kevin See Db2混合云安全开发团队