Возможно, у вас global_names
установлено значение true
, и вы подключаетесь не совсем так, как вы думаете.connect to
- это учетная запись пользователя в удаленной базе данных, к которой вы хотите обратиться, в соответствии с паролем, который вы даете в предложении identified by
.using
выглядит как запись tnsnames.ora
, но запись с connect_data
указывает на SID ORACLE
;может быть полезно добавить эту запись к вашему вопросу.Похоже, что вы в настоящее время задаете псевдоним в предложениях using
и connect to
, что, вероятно, неверно.
При включенном global_names
имя ссылки на базу данных должно соответствоватьИмя удаленной базы данных - это фактическое имя, а не псевдоним, который вы ему дали.Это означает, что ваша ссылка на базу данных имя должна быть ORACLE
, что может немного сбивать с толку.
Вы также можете отключить настройку global_names
на уровне базы данных, но этоможет быть не разрешено или нежелательно.Если это редко используемая ссылка, вы также можете добавить alter session set global_names=false
перед любыми запросами, которые используют ссылку.Впрочем, в долгосрочной перспективе может быть непонятно, чтобы ваши имена были непротиворечивыми.