【发布时间】:2016-11-24 05:16:36
【问题描述】:
我正在尝试使用 Python 连接到 SQL 数据库,但我很难找到连接到 JDBC 的文档/示例。我可以使用以下代码在 MATLAB 中执行此操作:
`Name = 'ServerName';
Username = '';
Password = '';
Server = ['jdbc:sqlserver://ServerName:1433;'...
'database=DB;',...
'applicationIntent=ReadOnly;',...
'integratedSecurity=true;'];
Connection = database('DB',Username , Password,...
'com.microsoft.sqlserver.jdbc.SQLServerDriver', Server );`
我想在 Python 中执行此操作。由于 JDBC,我认为我不能使用 pymssql 或 pyodbc(我已经尝试过)。我已经尝试过,但失败了,使用以下方法:
`import jaydebeapi
conn = jaydebeapi.connect('com.microsoft.sqlserver.jdbc.SQLServerDriver',
[Server , Username,Password])`
在 Python 中实现此功能的任何帮助都会很棒,谢谢!
【问题讨论】:
-
澄清一下,JDBC 是一种 API/标准,而不是数据库。看起来您正在连接到 MS SQL Server 实例,在这种情况下,您应该能够通过 pyodbc 使用 pymssql 或适当的 ODBC 驱动程序。无论如何,如果您在尝试
jaydebeapi.connect(...)时澄清您看到的错误或行为,将会有所帮助。 -
嗯,也许 MATLAB 使用 JDBC 因为它是基于 java 的?如果我尝试使用 pymssql,我会收到以下错误消息:登录失败,DB-Lib 错误消息 20018,严重性 14:\n一般 SQL Server 错误:检查来自 SQL Server 的消息\nDB-Lib 错误消息 20002,严重性 9:\n自适应服务器连接失败 (DB:1433)\n")
-
@Jerod,感谢您为我指明了正确的方向。我发布了我的解决方案。
标签: python database jdbc jaydebeapi