sobota, 6 listopada 2010

Kurs Oracle SQL. Użytkownik HR i jego schemat.

Środowisko pracy

Przed przejściem do dalszej części kursu, pobierz i zainstaluj serwer bazy danych Oracle Express Edition. Ta wersja bazy jest bezpłatna, można ją pobrać po zarejestrowaniu się na stronie korporacji Oracle. Poza wersją XE, Oracle oferuje również bardziej rozbudowane wersje bazy – Standard oraz Enterprise które jednak są komercyjne. Na potrzeby niniejszego kursu wystarczy nam wersja XE. Instalacja przebiega w różny sposób dla różnych systemów operacyjnych, dlatego sprawdź jak zainstalować bazę Oracle w swoim systemie.
Użytkownik HR
Oracle poczynając od 10g wzwyż posiada predefiniowanego użytkownika HR. Służy on do celów testowych, posiada kilka tabel z przykładowymi danymi. Aby móc zacząć z niego korzystać, musimy z poziomu użytkownika SYS odblokować go poprzez system zarządzania bazą – APEX. Jeśli tego nie zrobimy, Oracle będzie odrzucać połączenia do bazy danych. W tym celu wchodzimy poprzez przeglądarkę na adres http://localhost:8080/apex i logujemy się jako użytkownik SYS z hasłem ustawionym przy instalacji. Przechodzimy do   Administration->Database Users->Manage Users






Wybieramy użytkownika HR a następnie zmieniamy pole „Account Status” z Locked na Unlocked. Teraz możemy się wylogować z konta użytkownika SYS, a następnie zalogować jako HR. Przechodzimy do „Objects” gdzie możemy przejrzeć dostępne dla tego użytkownika tabele.




System APEX jest dostępny od razu po instalacji bazy Oracle. Jeśli po wejściu w adres http://localhost:8080/apex nic się nie wyświetla, lub widnieje informacja o błędzie, sprawdź ustawienia swojej zapory internetowej. Być może będziesz musiał dodać port 8080 do wyjątków.

Schemat użytkownika HR

Przykładowe dane użytkownika HR są informacjami o firmie, jej oddziałach i pracownikach.
• Tabela „departments” zawiera dane o działach firmy.
• Tabela „locations” zawiera dane o położeniach w których mogą znajdować się działy.
• Tabela „countries” zawiera informacje o krajach w których znajdują się poszczególne lokalizacje działów.
• Tabela „regions” zawiera dane o regionach całego świata w których znajdują się kraje.
• Tabela „jobs” zawiera informacje o stanowiskach które zajmują pracownicy firmy oraz przypisanych do nich minimalnych i maksymalnych płac.
• Tabela „employees” zawiera informacje o pracownikach firmy.
• Tabela „job_history” zawiera informacje jacy pracownicy w jakim okresie zajmowali jakie stanowiska.

Ten temat omawiam na poniższych szkoleniach:
Podstawy Oracle SQL
Podstawy SQL i PL/SQL
Możesz w nich uczestniczyć, a jako czytelnik tego bloga otrzymasz 10% zniżki - poinformuj o tym fakcie konsultanta.

23 komentarze:

  1. Jak dla mnie ten blog to rewelacja. Super sprawa. Bardzo jestem wdzięczny za ten "KAWAŁEK" wiedzy przedstawiony w sposób idealny,profesjonalny, fachowy. Materiał tutaj zawarty świetnie nadawałby się na książkę - proszę pomyśleć o tym Panie Andrzeju - ja na pewno bym kupił.
    Dziękuję
    piotr_b

    OdpowiedzUsuń
  2. Program prosic mnie o podanie Workspace, skad mam je wziac?

    OdpowiedzUsuń
    Odpowiedzi
    1. Wpisz INTERNAL, user ADMIN i hasło takie jak podałeś przy instalacji

      Usuń
  3. w ogole nie mam uzytkownika sys, jest tylko admin i po zalogowaniu się nie ma uzytkownika HR, tylko pokazuje admina na liscie.

    OdpowiedzUsuń
  4. Widac w tych nowych wersjach jest inaczej, ale poradzilem sobie logujac sie przez sql command line jako uzytkownik system i podajac haslo, potem
    polecenie

    ALTER USER HR ACCOUNT UNLOCK IDENTIFIED BY password;

    Strasznie to namieszane, raz dziala 'sys' raz 'system' raz 'admin' :(

    OdpowiedzUsuń
  5. Ja dostałem się do tego w inny sposób. Zalogowałem się pod localhost:8080/apex/apex_admin jako admin (sys nie działał), stworzyłem nowy workspace, stworzyłem nowego użytkownika do tego worskpace'a. jako schemat użytkownika wybrałem HR (ważne!). potem zalogowałem się pod localhost:8080/apex/ jako ów użytkownik w ramach nowego workspace'a. mam dostęp do tych samych tabel, jak wyżej.

    OdpowiedzUsuń
    Odpowiedzi
    1. +
      najlepsze rozwiązanie dla kogoś, kto zaczyna

      Usuń
  6. Niestety moje remedium na nic się zdało, ponieważ nie mogłem się podłączyć do bazy danych, ani za pomocą SQL command line, ani za pomocą sql developera. Najprostszym sposobem na uniknięcie problemów jest po prostu zainstalowanie bazy w starszej wersji, np. 10. Wtedy wszystko działa tak, jak jest tu opisane.

    OdpowiedzUsuń
  7. Mnie udało odblokować się HR: zalogowałem się jako sysadmin SQL Developer/ wybrałem Other Users / HR / Edit User / odznaczyłem checkbox "Account is Locked"

    OdpowiedzUsuń
  8. Witam, nie mogę się zalogować jako sys potrzebuje workspace a nie wiem co mam tam wpisać. Czy mógłbym prosić o pomoc ?

    OdpowiedzUsuń
    Odpowiedzi
    1. Cze Mateusz mam taki samy problem a rozwiązanie jest takie: wejdż na ta strone http://blog.atena.pl/wstep-do-apex następnie na dół strony do tytułu :Tworzenie i dostęp do Workspace’ów i tam jest wszystko krok po kroku opisane :) Pozdrawiam

      Usuń
    2. Dla osób które wciąż mają kłopot z odblokowaniem użytkownika HR - podążajcie za kolejnymi krokami z filmu:
      www.youtube.com/watch?v=fLwLRDDoFnk
      ,z jedną uwagą - po otworzeniu zakładki 'Create Application Express Workspace' wybierzcie radio button 'use existing' a z listy rozwijanej wybierzcie usera 'HR'.

      Mam nadzieję że komuś przyśpieszy to rozpoczęcie zabawy!

      Usuń
  9. Nie działa na windows 7 64 bit co w tedy zrobić !?

    OdpowiedzUsuń
  10. Działa nawet na windows 8 64bit ... stop whining ;)

    A co do użytkownika HR, najprościej będzie odpalić sql studio, zalogować się jako admin, później przejść do users, odznaczyć "account is locked" "password expired" i dodać nowe hasło.

    OdpowiedzUsuń
  11. w Prosty sposób można zrobic to przez SQL DEVELOPERA

    OdpowiedzUsuń
  12. Polecam :
    https://www.youtube.com/watch?v=Znb3m8mGeM0

    Nie wiem czemu , ale gdy tworzyłem nowego uzytkownika z wykorzystaniem database HR to nie moglem się ni jak zalogować mimo że był odblokowany .W każdym razie wprowadzałem do niego nowe hasło ,natomiast wg tego tutoriala hasło wykorzystane do użytkowanika hr brzmi "hr" ,czyli tak samo .

    OdpowiedzUsuń
  13. Ten komentarz został usunięty przez autora.

    OdpowiedzUsuń
  14. Aby odblokować użytkownika HR na 11g wykonałem poniższe kroki. Po dokonaniu tego zabiegu mogłem zalogować się na konto użytkownika w SQL Developer i widziałem wszystkie tabele.

    ------------------------------------------------------------------------------------------------------
    Unlock HR Using the SQL Command Line

    1. To unlock the sample user account using the SQL command line:

    Display the SQL command prompt window. For example, on Windows, click Start, then Programs (or All Programs), then Oracle Database 11g Express Edition, and then Run SQL Command Line.

    2. Connect as the SYSTEM user:

    Type: connect
    Enter user-name: system
    Enter password:

    3. Enter the following statement to unlock the HR account:

    SQL> ALTER USER hr ACCOUNT UNLOCK;

    4. Enter a statement in the following form to specify the password that you want for the HR user:

    SQL> ALTER USER hr IDENTIFIED BY ;
    5. Optionally, exit SQL*Plus (which also closes the command window):

    SQL> exit

    ------------------------------------------------------------------------------------------------------

    OdpowiedzUsuń
  15. Witam.
    Jestem początkującym użytkownikiem.
    Kurs może i byłby świetny, ale nie jestem w stanie otworzyć lokalizacji:
    http://localhost:8080/apex
    powyłączałem wszystkie możliwe zapory w systemie i dalej klops :(
    Czy ktos jest w stanie mnie poratować?

    OdpowiedzUsuń
    Odpowiedzi
    1. Zamiast localhost musisz wpisać odpowiedni numer. Jeśli już zainstalowałeś Oracle Database, to wejdź w "Start->Oracle Datebase->Get Started" i wtedy otworzy ci tę stronę.

      Usuń
  16. Ten komentarz został usunięty przez autora.

    OdpowiedzUsuń
  17. Jakby ktoś trafił na problem z wersją 18c:
    http://www.rebellionrider.com/how-to-unlock-hr-user-in-oracle-database-18c-by-manish-sharma/

    OdpowiedzUsuń