Я могу нормально подключиться к DB2 с помощью моего приложения TOAD, но мне нужно иметь возможность подключаться в Python для создания некоторых автоматических отчетов.
Я установил библиотеку ibm_db
и пытаюсьследовать инструкциям, но я получаю сообщение об ошибке SQLCODE=-30081
.
import ibm_db
conn_str = 'database=XXXX;hostname=XXXX.host.com;port=11111;protocol=tcpip;uid=user;pwd=password'
conn = ibm_db_conn = ibm_db.connect(conn_str,'','')
Traceback:
Traceback (most recent call last):
File "C:/Users/username/PycharmProjects/Report/MAIN/MAIN.py", line 4, in <module>
conn = ibm_db_conn = ibm_db.connect(conn_str,'','')
SQLCODE=-30081
Поиск -30081
не очень полезен, так как может быть вызван спискомвещей.
Я где-то читал, что, возможно, ibm_db
поддерживается только на Python 3.4, и я использую Python 3.6, однако сейчас я не могу установить Python 3.4 на свой рабочий ПК, поскольку его администратор заблокирован.
Обновление:
Протестированное соединение с использованием командной строки с двумя различными вариантами соединения, доступными для ibm_db.
Оба типа соединения:
import ibm_db
conn_str = 'database=XXXX;hostname=111.111.111.111;port=11111;protocol=tcpip;uid=username;pwd=password'
try:
conn = ibm_db.connect(conn_str, '', '')
except:
print("no connection:", ibm_db.conn_errormsg())
else:
print("The 1st connection was successful")
try:
conn = ibm_db.connect('XXXX', 'username', 'password')
except:
print("no connection:", ibm_db.conn_errormsg())
else:
print("The 2nd connection was successful")
Ошибка:
C:\Users\username\Desktop\Python 3.6.2>python test.py
no connection: [IBM][CLI Driver] SQL30081N A communication error has been detected. Communication protocol being used: "TCP/IP". Communication API being used: "SOCKETS". Location where the error was detected: "111.111.111.111". Communica SQLCODE=-30081etecting the error: "recv". Protocol specific error code(s): "10054", "*", "0". SQLSTATE=08001
no connection: [IBM][CLI Driver] SQL30082N Security processing failed with reason "19" ("USERID DISABLED or RESTRICTED" SQLCODE=-30082001
Любое руководство будет оценено.