该表是数据库表。不能作为空闲桌打开

问题描述 投票:0回答:1

我正在尝试连接到在 Windows 计算机上的本地服务器上运行的 Advantage 数据库。使用

pyodbc
python lib,我能够建立与数据库的连接。下面是代码

import pyodbc

conn = pyodbc.connect('DSN=DemoDB;UID=User;PWD=PSWD')
if conn:
    print('Connected!')
    sql = "select * from test;"
    cur = conn.cursor()
    data = cur.execute(sql)
    print(data)
    conn.close()

但是当程序尝试对连接的数据库执行查询时失败,并出现以下错误

pyodbc.Error: ('HY000', '[HY000] [iAnywhere Solutions][优点 SQL][ASA] 错误 7200:AQE 错误:状态 = HY000; 本机错误 = 5159; [SAP][Advantage SQL Engine][ASA] 错误 5159:遇到错误 当尝试打开数据库表时。 该表是数据库表。 它不能作为空闲表打开。表名:alb(7200) (SQLExecDirectW)')

我无法在网络上或 SAP 社区论坛中找到有关该错误的更多信息。

数据库详细信息:

  • ODBC:优势 StreamlineSQL ODBC
  • 版本:Advantage Data Architect 11.10
python pyodbc advantage-database-server
1个回答
1
投票

DSN 应该是一个 .add 文件,该文件是数据库的容器。 Advantage DB有2种连接,空闲表连接和数据库连接。数据库连接更加安全,并通过 .add 文件提供许多附加功能。 看来您应该能够在此处下载文档(创建帐户后):https://wiki.scn.sap.com/wiki/display/EIM/Advantage+Online+Help+Files

© www.soinside.com 2019 - 2024. All rights reserved.