【问题标题】:Append data from local DB2 table to remote SQL Server table将本地 DB2 表中的数据追加到远程 SQL Server 表
【发布时间】:2012-12-27 21:32:30
【问题描述】:

我整天都在做这个,但我仍然很难过。我正在尝试将本地 (AS400/i5) DB2 表中的数据附加/插入到远程 SQL Server 2005 表中,作为在 i5 上运行的程序的一部分。我的主要攻击角度是使用 Java/JDBC 访问 MSSQL 表,但到目前为止还没有运气。看起来这应该很容易,但找到有用的信息却异常困难。如何使两个单独的连接以编程方式交互?

【问题讨论】:

    标签: sql-server-2005 jdbc ibm-midrange


    【解决方案1】:

    我从 Scott Klement- 学习了从 RPG 访问 SQL Server。 http://www.scottklement.com/jdbc/

    希望这能解决您的问题 - 到目前为止对我来说效果很好。

    【讨论】:

      【解决方案2】:

      如果您使用的是带有 Technology Refresh 4 [TR4] 的 IBM i 7.1,那么您可以根据标准命名规则使用 3 部分命名,这意味着 rdbname.schema.table(或视图)。这使单个 SQL 语句能够引用两个不同系统上的数据。

      需要将 SQL-Server 数据库添加为 IBM i 关系数据库目录条目 (ADDRDBDIRE)。阅读this article 了解详情。为了便于讨论,假设您将条目称为“msdb”。

      然后您应该能够像这样从 SQL Server 复制:

      INSERT INTO localdb2table (columnlist)
          SELECT columnlist 
              FROM msdb.schema.sometable
      

      (警告:我还没有在 TR4 上,所以我无法测试这个答案。)

      【讨论】:

      • 关于 i 7.1 TR4 是真的;但如果您一直关注the article 链接以获取 SQL Server 信息,您将获得“典型建议零售价*:用户许可证:759.00 美元或处理器价值单元 (PVU) 许可证:75,900.00 美元”。 Microsoft 不通过 JDBC Type 4 驱动程序提供其他开放连接。
      • 我没有使用过这个,但似乎 Microsoft says they support DRDA connections 通过 Microsoft Service for DRDA 作为其主机集成服务的一部分到 SQL Server。
      • 我花了几分钟(尝试)来计算在 Microsoft 方面许可它的成本,但很快就遇到了太多的替代方案来计算。看起来好像在一个简单的单核系统上安装大约 = 4 个 IBM 产品的用户许可。 (或者不是,很难确定。)目前还不清楚为什么 MS 不全力支持 DRDA 并完成它,特别是因为他们是创建它的小组的一部分(在他们选择放弃之前)和他们自己的子集一起出去)。我的评论应该更清楚地说明“MS 不提供(无需支付额外费用)......”。
      猜你喜欢
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多