Я новичок в подключении к oracle db (версия 19.3) через python 3.6. Я не получаю никаких строк в ответ. Скажите, пожалуйста, что мне здесь не хватает?
Я думаю, что все соединение настроено правильно, потому что оно не показывает никаких ошибок соединения или ошибок неверного пароля. Пробовал использовать fetchall(), fetchmany(), rowcount и т. д. все возвращает ноль. Я попытался распечатать сам объект курсора, который работает. Я выполнил запрос в своей БД. У меня локально установлена Oracle DB 19.3 с использованием разработчика Oracle SQL для запуска SQL. Что-нибудь еще мне нужно установить?
import cx_Oracle
conn = cx_Oracle.connect("username", "password", "localhost/orcl")
cur = conn.cursor()
cur.execute('select * from emp')
for line in cur:
print(line)
cur.close()
conn.close()
1 ответ
После запуска
delete from emp;
Ваша программа python будет отображать нулевые строки, как вы сообщаете.
Вы можете захотеть INSERT одну или несколько строк перед его запуском.
Вы также можете найти более удобным интерфейс, предлагаемый sqlalchemy. Он обеспечивает переносимость приложений между Oracle и другими серверными частями БД. Cf https://developer.oracle.com/dsl/prez-python-queries .html
Похожие вопросы
Новые вопросы
python-3.x
НЕ ИСПОЛЬЗУЙТЕ, ЕСЛИ ВАШ ВОПРОС ТОЛЬКО ДЛЯ PYTHON 3. Всегда используйте вместе со стандартным тегом [python].