【问题标题】:How do I enter a SQL Server Name in PYPYODBC which has a backslash in the server name?如何在 PYPYODBC 中输入服务器名称中带有反斜杠的 SQL Server 名称?
【发布时间】:2017-01-31 19:24:02
【问题描述】:

我在尝试连接到 pypyodbc 中的 SQL Server 实例时遇到了困难。服务器名称中有一个反斜杠,例如“servername\something”,而不仅仅是服务器名称。

在 pypyodbc 中,我尝试了所有不同的变体,

Server=servername\something
Server=servername\\something
Server=[servername\something]
Server=[servername\\something]

但它们似乎都不起作用。我收到以下错误消息

pypyodbc.DatabaseError: ('08001', '[08001] [Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server 不存在或拒绝访问。')

如何传递服务器的名称?

只要没有反斜杠,我就可以连接到其他服务器

【问题讨论】:

    标签: python sql-server-2008 pypyodbc


    【解决方案1】:

    Microsoft ODBC driver documentation 中所示,对于连接字符串中的Server= 参数

    要指定 SQL Server 的命名实例,请附加 \InstanceName

    所以问题真的是“如何在 Python 字符串中添加一个反斜杠?”

    一种方法是使用原始字符串文字 (r"")。这对我有用:

    conn_str = (
        r"Driver={ODBC Driver 11 for SQL Server};"
        r"Server=PANORAMA\SQLEXPRESS;"
        r"Database=myDb;"
        r"Trusted_Connection=yes;"
        )
    conn = pypyodbc.connect(conn_str)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多