【问题标题】:Error connecting to SQL Server 2008 with Django使用 Django 连接到 SQL Server 2008 时出错
【发布时间】:2010-06-09 02:26:49
【问题描述】:

我正在使用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), '打开连接时出错: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 但我仍然尝试我错了,我认为提供的解决方案是错误的。

【问题讨论】:

  • 我尽我所能重新格式化,但看起来你的一些错误消息以某种方式被删除了,这是最重要的一点。这绝对是一个连接错误,但我不知道我们是否有足够的信息可以在没有完整错误消息的情况下给出有用的响应。
  • 我遇到了类似的问题。但是,我已经设法这样推断:如果 SQL Server 在开发机器上,它工作得很好。当 SQL Server 在远程计算机上时,它不起作用。不幸的是,我仍然没有解决这个问题。 :(

标签: python django sql-server-2008 django-mssql


【解决方案1】:

@丹尼尔·迪保罗 这是我从控制台复制的消息。 我相信这就是全部...... 据我所知,这是因为较新的 mssql2008 是硬编码的。 你可以看到网址http://code.google.com/p/django-mssql/issues/detail?id=76 但我不能把它弄出来......我认为他的代码是错误的

【讨论】:

  • 不可能,部分回溯很明显被切断:ngo.db.backends.sqlserver_ado.dbapi.OperationalError: 应该是django.db.backends.sqlserver_ado.dbapi.OperationalError: - 如果您使用 Windows 控制台,我猜您错过了前三列复制。
  • 这个.....我已经更改密码 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), '打开连接时出错:PROVIDER=SQLOLEDB;DATA SOURCE=115.238.106.101,60433;网络库=DBMSSOCN;初始目录=rvdb_2;UID=sa; PWD=xxx')
  • 这个问题显然是代码错误。我谷歌告诉我较新的 mssql2008 是硬编码的,无法更改...我使用 django1.1 连接它
【解决方案2】:

我遇到了同样的问题。我认为问题在于您还没有创建数据库。 mssql 后端似乎没有为您执行此操作。一旦我创建了数据库并使用了下面的设置,一切正常!

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-17
    • 2010-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多