Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python和windows身份验证建立SQL Server数据库连接_Python_Sql Server_Python 3.x_Adodbapi - Fatal编程技术网

使用python和windows身份验证建立SQL Server数据库连接

使用python和windows身份验证建立SQL Server数据库连接,python,sql-server,python-3.x,adodbapi,Python,Sql Server,Python 3.x,Adodbapi,我正在使用adodbapi库来连接到SQL Server的数据库 我下面的连接字符串与SQL Server身份验证完美配合- config = configparser.ConfigParser() config.read("C:/configsql.ini") _SERVER_NAME = config['SQL']['SERVER_NAME'] _DATABASE = config['SQL']['DATABASE'] _USERNAME = config['SQL']['USERNAME'

我正在使用
adodbapi
库来连接到SQL Server的数据库

我下面的连接字符串与SQL Server身份验证完美配合-

config = configparser.ConfigParser()
config.read("C:/configsql.ini")
_SERVER_NAME = config['SQL']['SERVER_NAME']
_DATABASE = config['SQL']['DATABASE']
_USERNAME = config['SQL']['USERNAME']
_PASSWORD = config['SQL']['PASSWORD']
conn = adodbapi.connect("PROVIDER=MSOLEDBSQL;Data Source={0};Database={1};UID={2};PWD={3};".format(_SERVER_NAME,_DATABASE,_USERNAME,_PASSWORD))
return conn
当我尝试使用windows身份验证执行连接时,它不起作用

我修改了连接字符串,如下所示:

conn = adodbapi.connect("PROVIDER=MSOLEDBSQL;Data Source={0};Database={1};Integrated Security=SSPI;Persist Security Info=False".format(_SERVER_NAME,_DATABASE))
我得到了一个例外:

回溯(最近一次呼叫最后一次):
文件“C:\Program Files(x86)\Python 3.5\lib\site packages\adodbapi\adodbapi.py”,第113行,在connect中

co.connect(kwargs)

文件“C:\Program Files(x86)\Python 3.5\lib\site packages\adodbapi\adodbapi.py”,第275行,在connect中

self.connector.Open()#打开ADO连接

文件“”,第3行,处于打开状态
文件“C:\Program Files(x86)\Python 3.5\lib\site packages\win32com\client\dynamic.py”,第287行,在ApplyTypes中

结果=self.oleobj.InvokeTypes(*(dispid、LCID、wFlags、retType、argTypes)+args)

pywintypes.com_错误:(-2147352567,‘发生异常’,(0,‘Microsoft OLE DB Driver for SQL Server’,‘登录失败。登录来自不受信任的域,无法与集成身份验证一起使用’,,无,0,-2147467259),无)

在处理上述异常期间,发生了另一个异常:

回溯(最近一次呼叫最后一次):
sql\u连接中的第47行文件“Workflow.py”

conn=adodbapi.connect(“提供程序=MSOLEDBSQL;数据源={0};数据库={1};集成安全=SSPI;持久安全信息=False”。格式(_服务器名称,_数据库))

文件“C:\Program Files(x86)\Python 3.5\lib\site packages\adodbapi\adodbapi.py”,第117行,在connect中

raise api.操作错误(e,消息)

adodbapi.apibase.OperationalError:(com_错误(-2147352567,“发生异常”),(0,“Microsoft OLE DB Driver for SQL Server”,“登录失败。登录来自不受信任的域,无法与集成身份验证一起使用。”,无,0,-2147467259),无),“打开到的连接时出错。”“PROVIDER=MSOLEDBSQL;数据源=TESTSERVER;数据库=TEST;集成安全性=SSPI;持久安全性信息=False”)


任何人都可以告诉我如何使用Windows身份验证与SQL Server建立连接吗?

您可以发布不起作用的代码和连接字符串吗?以及您收到的错误消息。添加了修改的连接字符串和异常。错误为:“登录失败”。登录名来自不受信任的域,不能与集成身份验证一起使用。“这里有很多可能的答案:但通常这个错误的意思就是它所说的。您正试图从另一台计算机上的本地帐户连接到服务器,或从SQL server不信任的域连接到域帐户。是否也可以发布不起作用的代码和连接字符串?以及您收到的错误消息。添加了修改后的连接字符串和异常。错误是:“登录失败。登录来自不受信任的域,无法与集成身份验证一起使用。”这里有很多可能的答案:但通常此错误的意思与它所说的完全相同。您正试图从另一台计算机上的本地帐户连接到服务器,或从SQL server不信任的域连接到域帐户。