Я хочу подключить Python к DB2 версии 9.1 с помощью драйвера IBM DB2 ODBC.
Ниже приведен мой код для подключения Python к DB2.Эта программа работает в более поздних версиях IBM DB2.
import ibm_db
conn = ibm_db.connect("DSN=PDB2;DRIVER={IBM DB2 ODBC DRIVER};DATABASE=MDBASIS;PORT=1234;PROTOCOL=TCPIP;UID=username;PWD=password","","")
stmt = ibm_db.exe_immediate(conn,"create table egg (ID SMALLINT, NAME VARCHAR(30))")
stmt = ibm_db.exe_immediate(conn,"insert into egg (ID, NAME) VALUES('1','ok')")
state = ibm_db.exe_immediate("select * from egg")
result = ibm_db.fetch_both(state)
while result != False:
print 'id = %d and name = %s' %(result[0],result[1])
result = ibm_db.fetch_both(state)
stmt = ibm_db.exe_immediate(conn,"drop table egg")
Моя проблема в том, что версия моего IBM DB2 - 9.1 без FixPack, и я получаю сообщение об ошибке при попытке подключиться к IBM DB2 9.1версия.
"[IBM][CLI Driver] CLI0133E Option type out of range. SQLSTATE=HY092 SQLCODE=-99999"
И объяснение этой ошибки написано на странице http://programmingzen.com/2008/02/08/essential-guide-to-the-ruby-driver-for-db2/is: "Если вы получаете эту ошибку, это обычно означает, что вы используете слишком старую версию DB2. Установитьпоследняя FixPack или последняя версия DB2 (в настоящее время 9.5) для решения проблемы. "
Но я не могу установить последнюю FixPack или последнюю версию DB2 или каким-либо образом изменить существующую установку DB2.
Вопрос
Можно ли каким-либо образом подключиться к DB2 версии 9.1 без изменения базы данных, возможно, используя что-то еще, кроме IBM_DB?