Zdá se, že vaše SID a název služby nejsou stejné. V SQL Developer se zdá, že používáte SID - alespoň ve vlastní JDBC URL, které jste ukázali - jak je označeno dvojtečkou v :vdbsl4
.
Vaše adresa URL SQLcl používá název služby, jak je označeno lomítkem v /vdbsl14
. Použití SID místo toho (tj. změna / na :) v této URL by mělo fungovat, protože používá JDBC:
sqlcl username/[email protected]:1521:vdbsl14
Případně (a podle mě nejlépe) si zjistěte, jak se vaše služba vlastně jmenuje. Pokud máte dostatečná oprávnění k databázi, můžete show parameters service_names
z SQL Devleoper, nebo pokud máte přístup k serveru jako DBA, můžete provést lsnrctl services
nebo se dokonce podívejte na tnsnames.ora
v případě, že je definován alias TNS, který zobrazuje název služby. (listener.ora
pravděpodobně nepomůže, ale mohl by poskytnout rady nebo, pokud budete mít štěstí, ukázat výchozí název služby).
Tento název služby můžete použít v adrese URL JDBC jako /service_name
.
Můžete také použít alias TNS z SQLcl (nebo SQL*Plus). Možná již máte tnsnames.ora
dostupný; pokud ne, můžete jej zkopírovat ze svého serveru nebo vytvořit svůj vlastní. To může odkazovat na SID nebo název služby.
Dokonce můžete SQL*Plus předat úplný popis TNS (nejste si jisti SQLcl), ale to je trochu nepříjemné. Pokud nemáte/nechcete tnsnames.ora
můžete použít syntaxi „easy connect“, která je stejná jako pro SQLcl – ale má jako název služby nepovoluje SID.