Wygląda na to, że Twój identyfikator SID i nazwa usługi nie są takie same. W SQL Developer wydaje się, że używasz identyfikatora SID - przynajmniej w niestandardowym adresie URL JDBC, który pokazałeś - jak oznaczono dwukropkiem w :vdbsl4 .
Twój adres URL SQLcl używa nazwy usługi oznaczonej ukośnikiem w /vdbsl14 . Zamiast tego użycie identyfikatora SID (tj. Zmiana / na :) w tym adresie URL powinno działać, ponieważ używa JDBC:
sqlcl username/example@sqldat.com:1521:vdbsl14
Ewentualnie (i najlepiej moim zdaniem) dowiedz się, jaka jest nazwa Twojej usługi. Jeśli masz wystarczające uprawnienia do bazy danych, możesz zrobić show parameters service_names z SQL Devleoper, lub jeśli masz dostęp do serwera jako DBA, możesz wykonać lsnrctl services , a nawet spójrz na tnsnames.ora w przypadku zdefiniowania aliasu TNS, który pokazuje nazwę usługi. (listener.ora prawdopodobnie nie pomoże, ale może dać wskazówki lub, jeśli masz szczęście, pokazać domyślną nazwę usługi).
Możesz użyć tej nazwy usługi w adresie URL JDBC, jako /service_name .
Możesz również użyć aliasu TNS z SQLcl (lub SQL*Plus). Być może masz już plik tnsnames.ora do dyspozycji; jeśli nie, możesz skopiować go ze swojego serwera lub stworzyć własny. Może to odnosić się do identyfikatora SID lub nazwy usługi.
Możesz nawet przekazać pełny opis TNS do SQL*Plus (nie jestem pewien co do SQLcl), ale jest to trochę nieprzyjemne. Jeśli nie masz/nie chcesz tnsnames.ora możesz użyć składni „easy connect”, która jest taka sama, jak w przypadku SQLcl — ale ta ma jako nazwa usługi, nie zezwala na identyfikatory SID.