问题标签 [heterogeneous-services]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
261 浏览

oracle - 如何更新oracle异构服务元数据?

我正在从 Oracle 连接到不同的数据库(MS Access、MySQL、...)。打开连接时,Oracle 会读取远程数据库中的元数据(表和视图定义)。但是在更新远程对象元数据时(在表上添加列、视图定义......)Oracle 没有被注意到。

我发现刷新元数据的唯一方法是终止异构服务器进程(hsolesql,...)并再次查询。有没有其他方法可以在不终止进程的情况下做到这一点?

0 投票
5 回答
479 浏览

c++ - 语言整合

我可能是这里的少数人,但似乎在我的整个学术/职业生涯中,我都学过不同的语言。在此期间,语法和编程范式是重点,但我们从来没有教过如何集成使用不同语言编写的系统以及做出此决定的正确方法。

现在郑重声明,我不是在谈论规范的 Web 堆栈或更新、更性感、对 JVM 友好的语言。我想知道是否有“已知资源”可以让我了解诸如 Java 和 C++ 等绑定语言背后的决策过程。

诚然,我想到了 XML、JSON 和 XMPP 等工具。再说一次,我见过使用序列化绑定 Java 和 C++ 的系统。我不是在寻找一种万能的解决方案。我更感兴趣的是了解不同的解决方案以及我应该如何做出这样的决定。

如果这对于这个论坛来说太宽泛了,我深表歉意,但至少我没有要求人们更正或重写我拙劣的代码;)

0 投票
2 回答
3507 浏览

oracle - Oracle XE 数据库使用 ODBC 链接到 Teradata

我在我的计算机 (WinXP) 上安装了 Oracle Server Express 10g。我想使用 ODBC 创建到 Teradata 的数据库链接。我已成功创建(非 ODBC)数据库链接到其他 Oracle 数据库。但是,我似乎无法使 Teradata 数据库链接正常工作。

这是我所做的:

1) 使用 Teradata 的 ODBC 驱动程序版本 13 在 Windows 中创建到 Teradata 的 ODBC 连接。通过使用 Teradata SQL 助手连接到数据库来测试它是否可以工作。称为连接 LPS_PROD_VIEW。我将登录详细信息保存在 ODBC 设置中。

2)编辑listener.ora的SID_LIST_LISTENER部分:

在监听器部分

3) 在 ...hs\admin\ 文件夹中,添加 initLPS_PROD_VIEW.ora 文件。内容:

4) 在 TNSnames.ora 中添加了一个条目(在 XE 服务器目录和一个单独的 10g 目录中,我之前在安装 Oracle XE 之前拥有)。

5)通过services.msc重启Oracle监听服务。

6)连接到本地数据库以创建数据库链接

7) 尝试运行查询但得到 ORA-12154: TNS: 无法解析指定的连接标识符。

我究竟做错了什么?HS 是否支持 Teradata ODBC 版本 13?

在此先感谢并感谢您的帮助!

0 投票
1 回答
4626 浏览

sql-server - 从 Oracle 向 SQL Server 表中插入行

我有一个在 Unix 环境上运行的 Oracle 10G 数据库,并且需要编写一个将在 Oracle 数据库上运行的 PL/SQL 作业,该作业将填充另一个数据库中的表,该数据库是在 Windows 平台上运行的 Microsoft SQL Server 数据库。

环顾四周,看起来这可以通过数据库链接实现。有没有人有更多关于这方面的信息?例如,连接的可靠性如何?这样设置有什么缺点吗?

我可能对 SQL Server 数据库的访问权限有限。是否可以在无需对 SQL Server 数据库进行任何更改的情况下进行上述操作?(假设 SQL 服务器上的 DBA 已将数据库配置为从其他数据库访问)

谢谢

0 投票
2 回答
40174 浏览

sql-server - 通过数据库链接将 Oracle 连接到 SQL Server

我正在尝试从 Oracle 10G(在 UNIX 上)连接到 SQL Server 数据库(在 Windows 上)。我看过手册,我承认我发现文档很难理解。似乎有几个选项可供使用,但没有文档描述每个选项的工作原理。

例如,我已经获得了有关我需要连接到的数据库(即 SQL Server 数据库)的以下信息

  • 用户名
  • 密码
  • 数据库名称 [假设数据库名称是 data_extract]

要连接上述内容,我进行了以下更改

$ORACLE_HOME/hs/admin/inithsodbc.ora

$ORACLE_HOME/network/admin/tnsnames.ora

$ORACLE_HOME/network/admin/listener.ora

注意:在 listener.ora 中,我只添加了最后一个 SID_DESC 条目。

然后我继续创建数据库链接,如下所示

当我尝试访问表时,出现以下错误

有几件事我不确定

  • 我在哪里指定从oracle db访问sql server到sql server db的用户名和密码
  • 在互联网上阅读后,我可以看到一些人引用 DSN 数据源。我被告知,我所拥有的信息就是我所需要的。这是正确的还是我需要别的东西?
  • 我在 inithsodbc.ora 和 tnsnames.ora 中指定的 sid 实际上是 sql server 数据库。它是否正确?

任何有关上述内容的帮助将不胜感激。谢谢

0 投票
2 回答
2869 浏览

java - 使用 PL/SQL 调用使用 JDBC 连接到 SQL server 数据库的 java 方法

我希望能够将 Oracle 数据库与 SQL 服务器数据库连接起来。我知道 DG4ODBC 和 HSODBC,但我不能使用这些驱动程序有几个原因。

我知道可以从 PL/SQL 中调用 java 代码,如此处所述http://download.oracle.com/docs/cd/B19306_01/java.102/b14187/chthree.htm

我想编写一个 PL/SQL 过程,它将在 Java 存储过程中调用 Java 方法。Java方法的处理是连接一个SQL server数据库,插入一些数据。Java 方法将使用 JDBC 驱动程序连接到 SQL Server,该驱动程序将位于运行 Oracle 的 Unix 服务器上。

以上可能吗?如何定义驱动程序位置?上述方法有什么缺点吗?在任何地方都可以找到任何教程或示例?

0 投票
2 回答
33380 浏览

oracle - 无法在 Oracle-DB 中创建指向远程数据库的数据库链接

我们公司有一个 CRM 系统,它使用Oracle 11g 数据库。它由第三方供应商开发。

我们无权访问运行 CRM 系统的服务器。但是,我们有可用的 DBA 登录数据(SYS 用户)。它包括:

  • 服务器IP:172.1.2.3
  • 端口:1521
  • SID: abc
  • 用户:sys
  • 密码:*

我们可以使用它通过Oracle SQL Developer 3.1访问数据库(连接 >> 属性)

现在必须将部分数据从 CRM 数据库复制另一个Oracle 数据库中,该数据库驻留在另一台服务器上。

据我了解,我需要在我的目标数据库中创建一个数据库链接。我试过这样的事情:

我的tnsnames.ora如下:

....我的listener.ora看起来像这样:

PROGRAM=extproc 是正确的选择吗?还有其他几个程序可供选择。我什至无法使用lsnrctl启动侦听器,因为它无法“验证用户”之类的。具有讽刺意味的是,到MS SQL 服务器的侦听器设置和数据库链接工作顺利。

现在,尽管缺少有关 CRM 数据库系统的一些重要信息,但仍然可以在 SQL Developer 中连接到数据库。难道不是也可以在两个 Oracle DB 之间建立连接吗?请帮助我设置和创建数据库链接。

- - - 编辑: - - - -

Alex Poole 的提示帮助我让它发挥作用。我用了

获取完整的服务名称。它的格式为 abc.def,其中def是域。因此,我将域名添加到tnsnames.ora中的 TNS 别名:

可以在目标数据库服务器的命令提示符下使用tnsping MYTNSENTRY测试连接。tnsnames.ora 是本地的。但是,我删除了对“本地” listener.ora的所有更改,因为该监听器确实驻留在 CRM 服务器上。

SQL 命令几乎没有变化,但现在连接正常:

0 投票
0 回答
904 浏览

sql-server - 无法使用 db 链接创建对象;ORA - 0251: 同一事务中的另一个会话或分支失败或已完成

我在 Oracle 11.2.0.3 和 SQL Server 2008 之间有一个异构链接。当我尝试创建视图或引用系统表的异构服务视图的过程时,我收到下面列出的 4 个错误:

ORA-00604: 递归 SQL 级别 1 发生错误

ORA-02051: 同一事务中的另一个会话或分支失败或已完成

ORA-06512:在“SYS.HS$_DDTF_SQLTABLES”,第 58 行

ORA-06512: 在第 1 行

例如,当我尝试执行以下代码时会创建这些错误:

但是,我可以在任何普通表上创建视图:

我已经对与此类似的问题进行了一些研究,但没有找到与此特定问题相关的任何参考资料。我相信这可能与创建视图的并发操作和对SQL Server数据库的select *语句调用之间的冲突有关。或者可能是在创建视图时没有完全获取记录。

我不知道 HS 链接配置和属性的细节。

0 投票
1 回答
157 浏览

oledb - PostgreSQL 函数能否作为链接服务器与 SQL Server 2000 通信

情况:逐渐将大量旧版 SQL Server 应用程序迁移到 PostgreSQL。问题:PostgreSQL 函数可以对 SQL Server 2000 数据库执行查询吗? 有什么可以与PostgreSQL中的OpenQuery相媲美的吗?或者像 Oracle 的异构服务

0 投票
1 回答
404 浏览

sql - dbms_hs_parallel 失败并出现错误

我想使用 dblink 和 dbms_hs_parallel 包将并行数据从 oracle 加载到 oracle。为了做到这一点,我在下面列出了 plsql:

所有数据库对象都有效,但出现错误

"ORA-00904: "DBMS_HS_PASSTHROUGH"."AGENT_CLASS_NAME": 无效标识符

ORA-06512:在“SYS.DBMS_HS_PARALLEL”,第 1097 行

ORA-06512:在第 4 行"。

我很确定它在尝试插入时会失败。因为如果我的数据库中没有 BRED_SIEBEL_CARDS,则程序包会创建它。这意味着该包执行预期的操作,但不幸的是没有插入数据。