cx_Oracle.DatabaseError: ORA-00942: таблица или представление не существует - PullRequest
0 голосов
/ 30 мая 2018

Я пытаюсь получить доступ к таблице базы данных Oracle с помощью скрипта Python.Я написал следующий код:

 import cx_Oracle

 con = cx_Oracle.connect("system/infy123@127.0.0.1/XE")
 cur = con.cursor()
 cur.execute(" SELECT * FROM SUPPLIER")
 for row in cursor.fetchall(): 
      print(row)

и вывод:

Traceback (most recent call last):
  File "C:/Users/ADMIN/AppData/Local/Programs/Python/Python36- 
32/my_file.py", line 6, in <module>
    cur.execute(" SELECT * FROM SUPPLIER")
cx_Oracle.DatabaseError: ORA-00942: table or view does not exist

Может кто-нибудь сказать мне, как решить эту ошибку?

1 Ответ

0 голосов
/ 31 мая 2018

Бьюсь об заклад, это проблема с именем схемы.Вы подключаетесь как пользователь SYSTEM, но хотите выбрать из таблицы с именем SUPPLIER, которая, скорее всего, отсутствует в схеме SYSTEM.

Вы можете узнать, где находится таблица, запустив ее в Apex.Мастерская SQL:

SELECT owner FROM all_tables WHERE table_name = 'SUPPLIERS';

Вам нужно будет поставить владельца перед столом.Например, если последний запрос вернул 'MYUSER', вам нужно изменить запрос на

cur.execute(" SELECT * FROM MYUSER.SUPPLIER")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...