如何修复“命名管道提供者:无法打开与SQL Server [53]的连接”?

时间:2019-10-30 14:35:35

标签: python sql-server django pyodbc

不能将mssql数据库连接到django。我尝试使用python做事,效果很好,但是当我尝试在Django上运行服务器时,出现了错误。

Pyodbc版本:4.0.27; Django版本:2.1.13; Microsoft SQL Server 2017(RTM)-14.0.1000.169(X64)。

DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': '<djangoBanks>',
        'HOST': '<DESKTOP-0FKB14V>',
        'USER': '<test>',
        'PASSWORD': '<12345>',

        'OPTIONS': {
            'driver': "ODBC Driver 17 for SQL Server",
            'Trusted_Connection' : 'Yes',
        }
    }
}

当我尝试使用python manage.py runserver时出现错误:

  

“ 08001”,“ [08001] [Microsoft] [用于SQL Server的ODBC驱动程序17]已命名   管道提供程序:无法打开与SQL Server的连接[53]。 (53)   (SQLDriverConnect); [08001] [Microsoft] [用于SQL的ODBC驱动程序17   服务器]登录超时已过期(0); [08001] [Microsoft] [ODBC驱动程序17   对于SQL Server]无效的连接字符串属性(0); [08001]   [Microsoft] [用于SQL Server的ODBC驱动程序17]与网络相关或   建立连接时发生特定于实例的错误   到SQL Server。找不到服务器或无法访问服务器。检查是否   实例名称正确,并且SQL Server是否配置为允许   远程连接。有关更多信息,请参见SQL Server联机丛书。   (53)'

1 个答案:

答案 0 :(得分:0)

我编辑了“选项”,然后它开始工作。

DATABASES = {
    'default': {
        'ENGINE': 'sql_server.pyodbc',
        'NAME': 'djangoBanks',
        'HOST': 'DESKTOP-0FKB14V',
        'USER': 'test',
        'PASSWORD': '12345',

    'OPTIONS': {
            'driver': "ODBC Driver 17 for SQL Server",
            'SERVER' : 'DESKTOP-0FKB14V',
            'DATABASE' : 'djangoBanks',
            'UID' : 'test',
            'PWD' : '12345',
            'Trusted_Connection' : 'Yes',
        }
    }
}