2013-05-18 2 views
-1

Может ли кто-нибудь дать мне краткую информацию о том, как «подключиться» к представлению Oracle из Python?Python и Oracle Views

Я огляделся, но ничего не мог. Я новичок в Oracle DB. Я не буду использовать его, я только подключу его к Python и получу информацию. Но у меня есть только просмотр для подключения.

Сначала я думал, что я могу использовать вид, как показано ниже, для подключения:

db = sqlalchemy.create_engine('oracle://USER:[email protected]:1521/VIEW_NAME') 

Тогда я использовал это:

cx_Oracle.connect(user='USER', password='PASS', 
    dsn=cx_Oracle.makedsn('SERVER',1521,'VIEW_NAME')) 

Тогда я понял, что вид не может быть использован в качестве имени Д.Б. , потому что это всего лишь «инструмент» для просмотра только существующих таблиц.

Как это сделать?

ответ

2

Вид в СУБД, такой как Oracle, по существу является «виртуальной» таблицей. Когда вы запрашиваете его, вы запрашиваете его так же, как и таблицу. Поэтому подключитесь к базе данных/схеме, содержащей представление, и выберите ее как обычно. Вид вообще не отображается в деталях соединения, как раз в запросе.

+0

Спасибо за ответ. Я думал точно, как вы утверждали, но сервер, который я пытаюсь подключить, не мой, это чужой. Он утверждал, что я могу подключиться к просмотру без фактического подключения к db, поэтому я попробовал. ;) – mtndesign

+1

Я бы предпочел вызвать представление «хранимый запрос», а не «виртуальную таблицу». –

+0

Так и я, но с точки зрения объяснения ОП, учитывая его вопрос, последний термин, казалось, лучше разъяснил мне. –