как обработать «ORA-12504: TNS: слушателю не было присвоено имя SERVICE_NAME в CONNECT_DATA» в python подключении к базе данных - PullRequest
0 голосов
/ 23 февраля 2020

Я написал приведенный ниже код в качестве практики на PDB C

import cx_Oracle
con=cx_Oracle.connect('scott/tiger@localhost')
if con:
    print("success..")
    con.close()
else:
    print("error")

, и я получил ошибку ниже

DatabaseError: ORA-12504: TNS:listener was not given the SERVICE_NAME in CONNECT_DATA

, пожалуйста, помогите мне разобраться с этим

1 Ответ

2 голосов
/ 23 февраля 2020

con следует изменить так, чтобы он содержал дополнительную информацию: port и service name

con = cx_Oracle.connect('scott/tiger@localhost:1521/service_name')
                                               ----
                                               port

Порт обычно равен 1521; Название сервиса зависит от того, что вы выбрали. Если это Oracle XE (Express редакция), может быть xe. Спросите своего администратора базы данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...