【问题标题】:Can not connect to DB2 using ibm_db api in Robot framework无法在 Robot 框架中使用 ibm_db api 连接到 DB2
【发布时间】:2018-07-04 09:09:18
【问题描述】:

我在 RIDE 编辑器中使用以下语句连接到 DB2 数据库(在 IBM i Access 服务器上)

Connect To Database Using Custom Params    ibm_db    'DATABASE=mydb;HOSTNAME=10.53.x.x;PORT=8471;PROTOCOL=TCPIP;UID=myuser;PWD=xxxx;','',''

但它总是连接并且无法完成。我可以telnet端口8471(这是访问数据库的端口)

当我尝试另一个端口时,出现以下错误:

SQL30081N A communication error has been
detected. Communication protocol being used: "TCP/IP". Communication
API being used: "SOCKETS". Location where the error was detected:
"x.x.x.x". Communication function detecting the error: "recv".
Protocol specific error code(s): "*", "*", "0". SQLSTATE=08001

你知道如何解决这个问题吗?

【问题讨论】:

  • 你是什么意思“总是连接,无法完成”?详细说明。 Db2 客户端诊断中显示哪些消息?
  • 我的平均 RIDE 编辑器显示它仍然连接....一段时间(不成功)
  • 回答所有问题。来自 Db2 客户端的任何诊断信息?您能否在命令行上使用相同的凭据/端口等连接到同一个数据库。提供有关您的客户端的详细信息、python 运行的位置、您的 python 版本/位数和 ibm_db 版本。跨度>
  • 我使用 ibm_db 2.0.8,我从 RIDE 编辑器连接到 DB2 服务器,不了解 DB2 客户端。我的 python 安装在远程机器上(Windows 8)
  • 这是否有效? DB2 客户端与 IBM i 的连接需要收费许可。您最好使用 IBM i Access(或 IBM i Access Client Solutions)ODBC 或 JDBC 驱动程序。

标签: python db2 robotframework db2-400


【解决方案1】:

尝试使用 ibm_db_dbi 而不是 ibm_db

它对我有用。

【讨论】:

  • 这对我来说很有意义 - 请参阅我上面关于 IBM i 特异性的评论。
  • 嗨,使用 ibm_db_dbi,我得到了相同的结果
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-03
  • 2021-04-09
  • 2016-05-05
  • 2023-03-15
  • 1970-01-01
  • 2023-03-13
相关资源
最近更新 更多