【发布时间】:2019-08-19 09:31:20
【问题描述】:
我正在尝试使用 pyodbc 和 django 连接到我的 SQL Server 2016 数据库。
在 SQL 配置管理器中,我将所有网络配置都设置为 Enabled
- 共享内存
- 命名管道
- TCP/IP
防火墙已关闭
我尝试使用 localhost 并且它工作正常,但是当我尝试连接到同一网络上的服务器时它不起作用并显示以下错误:
/connect/ 处的操作错误
('08001', '[08001] [微软][SQL Server Native Client 11.0]Named Pipes Provider: 无法打开 连接到 SQL Server [53]。 (53) (SQLDriverConnect); [08001] [Microsoft][SQL Server Native Client 11.0]登录超时过期(0); [08001] [Microsoft][SQL Server Native Client 11.0]与网络相关的或 建立连接时发生特定于实例的错误 到 SQL Server。服务器未找到或无法访问。检查是否 实例名称是正确的,并且如果 SQL Server 配置为允许 远程连接。有关详细信息,请参阅 SQL Server 联机丛书。 (53)')
我尝试检查服务器上的 ODBC 驱动程序并显示以下驱动程序:
- 适用于 SQL Server 的 ODBC 驱动程序 13
- SQL 服务器
- SQL Server Native Client 11.0
我都试过了,但都没有成功。
views.py
from django.shortcuts import render
import pyodbc
# from .models import Artist
# Create your views here.
def connect(request):
conn = pyodbc.connect('Driver={ODBC Driver for SQL Server};'
'Server=AB-INT-SQL;'
'Database=testDB;'
'Trusted_Connection=yes;')
cursor = conn.cursor()
c = cursor.execute('SELECT * FROM Artist')
return render (request,'connect.html',{"c":c})
connect.html
{% for row in c %}
{{ row }}
{% endfor %}
【问题讨论】:
-
您是否在同一台服务器上运行多个 SQL 实例?
-
@ShekarKola 没有它的一台机器名称和默认实例,但有几个数据库。但我指定了所需的数据库
标签: sql-server database-connection pyodbc