【问题标题】:Cannot connect to SQL\Express with pyodbc/pymssql and Robot Framework无法使用 pyodbc/pymssql 和 Robot Framework 连接到 SQL\Express
【发布时间】:2017-05-15 21:11:36
【问题描述】:

我在使用 Robot Framework 的 DatabaseLibrary 连接到工作中的 SQL\Express 数据库实例时遇到问题。

如果我将Connect To Database 与先前定义的变量一起使用,或者将Connect To Database Using Custom Params 与连接字符串一起使用,我会得到以下结果:

  • pyodbc: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server does not exist or access denied. (17) (SQLDriverConnect); [01000] [Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen (Connect()). (53)')
  • pymssql:InterfaceError: Connection to the database failed for an unknown reason.

我使用的连接字符串如下:'DRIVER={SQL Server};SERVER=localhost\SQLExpress;UID=sa;PWD=mypass;DATABASE=MyDb'

我从指南和教程中复制了几个示例,所有示例都产生相同的结果,所以我的猜测是我的结果有问题,但我就是不知道是什么。我可以使用 Microsoft SQL Server Management Studio 访问数据库就好了,所以数据库正在运行。

任何指导将不胜感激!

【问题讨论】:

  • 您是否尝试过在不使用 Robot Framework 的情况下从纯 Python 脚本连接到数据库?顺便说一句,请注意 pymssql 不是 ODBC 访问层,因此您发布的连接字符串几乎肯定不会与 pymssql 一起使用。
  • 可能与您无关,但在我们的工作场所,我们有许多 MSSQL 服务在一台机器(08、12、16)上运行,问题是我们的端口和界面变得混乱。至于不同接口报错信息的区别,pymssql基本都是对所有东西都说那个错误。我使用的关键字是:Connect To Database Using Custom Params pymssql ${DBConnect} 其中${DBConnect} 包含databaseuserPasswordhostport
  • 我能够使用您的解决方案进行连接。谢谢!

标签: python robotframework pyodbc pymssql


【解决方案1】:

我能够使用@Goralight 方法进行连接:Connect To Database Using Custom Params pymssql ${DBConnect} 其中${DBConnect} 包含databaseuserPasswordhostport

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-07
    • 1970-01-01
    • 2014-02-08
    • 2011-05-08
    • 2011-02-23
    • 1970-01-01
    • 2013-07-13
    • 2015-08-08
    相关资源
    最近更新 更多