Как выбрать таблицу SAP HANA в python - PullRequest
0 голосов
/ 02 июля 2018

Я подключился к SAP HANA с помощью Python

connection = pyodbc.connect(DSN = 'PROD-HANA')

У меня есть представление в SAP HANA, которое находится под prd - глобальное - Calculated_View_Name

В Python я выбираю значения из таблиц

with connection.cursor() as crsr:
    crsr.execute("SELECT * FROM prd.global.Calculated_View_Name")

Я получаю следующую ошибку

ProgrammingError: ('42000', '[42000] [SAP AG][LIBODBCHDB32 DLL][HDBODBC32] Syntax error or access violation;257 sql syntax error: database name not allowed in single-container mode: line 1 col 15 (at pos 15) (257) (SQLExecDirectW)')

Подскажите, пожалуйста, что не так с запросом?

1 Ответ

0 голосов
/ 04 июля 2018

Похоже, вы использовали полное имя для объекта базы данных, включая имя базы данных

Как показывает ошибка, ваша платформа базы данных HANA находится в режиме одного контейнера

Таким образом, вы должны опустить имя базы данных в запросе SELECT из предложения FROM

Так что вместо

prd.global.Calculated_View_Name

Вы можете использовать

global.Calculated_View_Name
...