使用Django连接SQL Server 2008时出错

1 投票
2 回答
2457 浏览
提问于 2025-04-15 23:43

我正在使用 django-mssql 和 SQL Server 2008,但我发现每当我执行一些命令时,总是会出错,比如:

python manage.py syncdb

错误信息如下:

raise OperationalError(e, "Error opening connection: " + connection_string) sqlserver_ado.dbapi.OperationalError: (com_error(-2147352567, '\xb7\xa2\xc9\xfa\ xd2\xe2\xcd\xe2\xa1\xa3', (0, u'Microsoft OLE DB Provider for SQL Server', u"\u7 528\u6237 'sa' \u767b\u5f55\u5931\u8d25\u3002", None, 0, -2147217843), None), 'E rror opening connection: PROVIDER=SQLOLEDB;DATA SOURCE=115.238.106.101,60433;Net work Library=DBMSSOCN;Initial Catalog=rvdb_2;UID=sa;PWD=xxx')

当我使用 Microsoft SQL Server Management Studio 客户端时,我可以成功连接到数据库。

我从这里获得了一些信息:http://code.google.com/p/django-mssql/issues/detail?id=76,但我尝试后还是出错,我觉得提供的解决方案是错误的。

2 个回答

0

我也遇到过同样的问题。我觉得问题在于你还没有创建数据库。mssql这个后端似乎不会自动为你创建数据库。等我自己创建了数据库,并使用下面的设置后,一切就正常了!

DATABASES = {
    'default': {
        'NAME': 'testdb',
        'ENGINE': 'sqlserver_ado',
        'HOST': 'localhost',
        'USER': '',
        'PASSWORD': '',
        'OPTIONS' : {
            'provider': 'SQLNCLI10.1',
            'extra_params' : 'DataTypeCompatibility=80;MARS Connection=True'
        },
    }
}
0

@Daniel DiPaolo 这是我从控制台复制过来的信息。 我确定就这些…… 我知道这是因为更新的mssql2008是硬编码的…… 你可以查看这个链接 http://code.google.com/p/django-mssql/issues/detail?id=76 但我无法解决这个问题……我觉得他的代码有问题。

撰写回答