"Error Locating Server/Instance Specified" 连接到 SQL 服务器时
"Error Locating Server/Instance Specified" when connecting to SQL Server
我正在使用 python 2.7 有下面的代码来连接 sql 个实例
class SqlConnector:
def __init__(self, driver, sqlserver_ip, database, **kwargs):
if 'port' in kwargs:
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip +';PORT=' + kwargs['port'] + ';DATABASE=' + database + ';trusted_connection=yes;'
else:
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip + ';DATABASE=' + database + ';trusted_connection=yes;'
print conn_string
self.conn = pypyodbc.connect(conn_string)
self.cur = self.conn.cursor()
def __enter__(self):
return self
def query(self, query_string):
self.cur.execute(query_string)
return
def get_all_table_columns(self):
columns = [column[0] for column in self.cur.description]
return columns
def get_all_table_rows(self):
rows = self.cur.fetchall()
return rows
def __repr__(self):
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip + ';DATABASE=' + database + ';trusted_connection=yes;'
return conn_string
def __exit__(self, exc_type, exc_val, exc_tb):
if self.conn or self.cur:
# close cursor
self.cur.close()
# close connection
self.conn.close()
我的 SQL 实例类似于 "hostname\PEWKA",但下面的错误是
(u'08001', u'[08001] [Microsoft][SQL Server Native Client 11.0]SQL
Server Network Interfaces: Error Locating Server/Instance Specified
[xFFFFFFFF]. ')
这是使用 pypyodbc 连接 SQL 实例的正确方法吗?真的无法从中找到太多信息。
任何人都可以提供一些帮助,我们将不胜感激。
谢谢
按实例名称连接
提供由反斜杠分隔的服务器名称和实例名称,例如 SERVER=hostname\PEWKA
。不要提供端口号。如果 SQL 服务器实例在远程计算机上,则 SQL 服务器浏览器服务必须在该计算机上 运行。
通过端口号连接
提供以逗号分隔的服务器名称和端口号,例如 SERVER=hostname,49242
。不要提供实例名称。另请注意,SQL 服务器 ODBC 驱动程序不支持连接字符串中的 PORT=
参数。
我正在使用 python 2.7 有下面的代码来连接 sql 个实例
class SqlConnector:
def __init__(self, driver, sqlserver_ip, database, **kwargs):
if 'port' in kwargs:
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip +';PORT=' + kwargs['port'] + ';DATABASE=' + database + ';trusted_connection=yes;'
else:
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip + ';DATABASE=' + database + ';trusted_connection=yes;'
print conn_string
self.conn = pypyodbc.connect(conn_string)
self.cur = self.conn.cursor()
def __enter__(self):
return self
def query(self, query_string):
self.cur.execute(query_string)
return
def get_all_table_columns(self):
columns = [column[0] for column in self.cur.description]
return columns
def get_all_table_rows(self):
rows = self.cur.fetchall()
return rows
def __repr__(self):
conn_string = 'DRIVER='+ driver + ';SERVER='+ sqlserver_ip + ';DATABASE=' + database + ';trusted_connection=yes;'
return conn_string
def __exit__(self, exc_type, exc_val, exc_tb):
if self.conn or self.cur:
# close cursor
self.cur.close()
# close connection
self.conn.close()
我的 SQL 实例类似于 "hostname\PEWKA",但下面的错误是
(u'08001', u'[08001] [Microsoft][SQL Server Native Client 11.0]SQL Server Network Interfaces: Error Locating Server/Instance Specified [xFFFFFFFF]. ')
这是使用 pypyodbc 连接 SQL 实例的正确方法吗?真的无法从中找到太多信息。
任何人都可以提供一些帮助,我们将不胜感激。
谢谢
按实例名称连接
提供由反斜杠分隔的服务器名称和实例名称,例如 SERVER=hostname\PEWKA
。不要提供端口号。如果 SQL 服务器实例在远程计算机上,则 SQL 服务器浏览器服务必须在该计算机上 运行。
通过端口号连接
提供以逗号分隔的服务器名称和端口号,例如 SERVER=hostname,49242
。不要提供实例名称。另请注意,SQL 服务器 ODBC 驱动程序不支持连接字符串中的 PORT=
参数。