我正在使用Django(和Python)开发我的第一步,我仍然在努力学习本教程。我使用的后端数据库是DB2(安装在Windows Sever 2008上),我使用IBM DB2 ODBC Driver从我的Windows 7 Professional机器连接到它。数据库名称是POLLS,ALIAS是POLLS,系统DSN名称是......好吧,也是POLLS。
这是settings.py中的DATABASES部分:
DATABASES = {
'default': {
'ENGINE' : 'ibm_db_django',
'NAME' : 'POLLS',
'USER' : '********',
'PASSWORD' : '********',
'HOST' : 'xxxxxxx',
'PORT' : '50000',
'PCONNECT' : True,
}
}
运行' manage runserver'时遇到的问题具有此配置的命令:
django.db.utils.ProgrammingError:[IBM] [CLI Driver] SQL1042C An 发生意外系统错误。 SQLSTATE = 58004 \ r \ n SQL CODE = -1042
运行'管理迁移'导致了同样的错误。
然后在玩了DB2连接字符串之后,我发现更换了“NAME'通过' DBALIAS'
DATABASES = {
'default': {
'ENGINE' : 'ibm_db_django',
'DBALIAS' : 'POLLS',
'USER' : '********',
'PASSWORD' : '********',
'HOST' : 'xxxxxxx',
'PORT' : '50000',
'AUTHENTICATION' : 'SERVER',
'PCONNECT' : True,
}
}
允许我在没有问题的情况下运行服务器,但尝试使用“管理迁移”来创建表格。结果:
文件 " C:\ Python34 \ lib中\站点包\ ibm_db_django-1.0.9.2-py3.4.egg \ ibm_db_django \ base.py&#34 ;, 第212行,在get_connection_params中 raise ImproperlyConfigured("请指定有效的数据库名称以连接到")