Oracle
 sql >> база данни >  >> RDS >> Oracle

Защо не мога да се свържа чрез jdbc с помощта на SQLcl

Изглежда, че вашият SID и името на услугата не са еднакви. В SQL Developer изглежда използвате SID - поне в персонализирания JDBC URL адрес, който показахте - както е отбелязано с двоеточие в :vdbsl4 .

Вашият SQLcl URL използва името на услугата, както е отбелязано с наклонената черта в /vdbsl14 . Използването на SID вместо това (т.е. промяната на / на :) в този URL трябва да работи, тъй като използва JDBC:

sqlcl username/[email protected]:1521:vdbsl14

Като алтернатива (и за предпочитане според мен) разберете какво всъщност е името на вашата услуга. Ако имате достатъчно привилегии в базата данни, можете да направите show parameters service_names от SQL Devleoper, или ако имате достъп до сървъра като DBA, можете да правите lsnrctl services , или дори да погледнете tnsnames.ora в случай че има дефиниран TNS псевдоним, който показва името на услугата. (listener.ora няма вероятност да помогне, но може да даде подсказки или ако имате късмет, покажете име на услуга по подразбиране).

Можете да използвате това име на услуга в JDBC URL като /service_name .

Можете също да използвате TNS псевдоним от SQLcl (или SQL*Plus). Може вече да имате tnsnames.ora на разположение; ако не, може да можете да го копирате от вашия сървър или да създадете свой собствен. Това може да се отнася до SID или името на услугата.

Можете дори да подадете пълно TNS описание към SQL*Plus (не съм сигурен за SQLcl), но това е малко неприятно. Ако нямате/искате tnsnames.ora можете да използвате синтаксис „лесно свързване“, който е същият като този, който използвате за SQLcl – но това има за да бъде името на услугата, то не позволява SID.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да изключа уикендите в SQL?

  2. Как да създадете външен ключ с ON UPDATE CASCADE на Oracle?

  3. Върната стойност на oci_parse

  4. Защо свързване чрез израз в FOR цикъл се изпълнява само веднъж?

  5. Oracle PLSQL задаване на курсор от променлива