Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Klucze obce - potrzebna pomoc
Forum PHP.pl > Forum > Bazy danych > Oracle
MarIst
Witam, zwracam się do Was z takim pytankiem czy w jednej tabeli mogą wystąpić tylko klucze obce (w moim przypadku dwa)questionmark.gif Bardzo proszę o pomoc.
mike
Mogą.

P.S.
Proszę poprawić tytuł wątku inaczej zostanie on zamknięty.
Obecny tytuł jest pozbawiony jakiegokolwiek sensu (w końcu co kogo czytając tytuły wątków na ich liście obchodzi czy jesteś początkujący czy nie). Sugestie co do formułowania tytułów wątków znajdziesz w Regulaminie forum.
kris2
Tak, Przeważnie w takim przypadku te dwa klucze obce tworzą razem Primary key.
MarIst
Rozumiem że te dwa klucze w tej tabeli można zadeklarować w ten sposób:

ALTER TABLE autor_ksiazkiADD CONSTRAINT autor_ksiazki_koFOREIGN KEY (id_autora) REFERENCES pg_autor(id_autora) ON DELETE CASCADE


i drugi klucz tak samo questionmark.gif
kris2
tak, ale do modyfikacji schematów proponuje używać narzędzi w stylu toad:

http://www.casestudio.com/enu/download.aspx
MarIst
Nie znam tego programu, czy mógłbyś mi wyjasnic do czego słuzy ?
redman2
Pamietaj, ze klucz obcy ZAWSZE musi odnosic sie do klucza podstawowego (cos_tam NUMBER CONSTRAINT pk PRIMARY KEY) albo do wymuszenia UNIQUE (cos_tam2 VARCHAR2 CONSTRAINT uk UNIQUE)
MarIst
Dziękuje Wam za pomoc sprawa z relacjami juz załatwiona z pozytywnym skutkiem party.gif Teraz poszukuję jakieś materiały do nauki dot. pracy w OEMie (Oracle Enterprise Manager) zakładanie użytkowników, nadawanie uprawnień itd.
redman2
Wiesz, sama obsługa EM jest banalnie prosta, bo generalnie polega na klikaniu myszka winksmiley.jpg w aplikacji napisanej w Java. Nie chodzi tu o klikanie tylko o umiejetnosc poslugiwania sie samym jadrem czyli Oraclem. Co ci da klikanie, jezeli nie bedziesz wiedzial nic o przestrzeniach tabel, schemas (nie znam polskiego odpowiednika), ekstentach, segmentach, itp, itd

Zapraszam do poznania podstaw Oracle'a.
kris2
Cytat(MarIst @ 21.08.2007, 19:38:09 ) *
Nie znam tego programu, czy mógłbyś mi wyjasnic do czego słuzy ?


Jest to program do projektowania struktury bazy danych.

mozesz narysowac baze i przerobic na polecenia sql

albo zaciagnac baze z sql do jej schematu graficznego.
redman2
Cytat(kris2 @ 10.10.2007, 23:53:21 ) *
Jest to program do projektowania struktury bazy danych.


Nie zgodze sie z Toba. Oracle to duzo wiecej niz struktura danych. To procesy tla, instancja, parametry inicjalizujace, procesy dedykowane czy serwery dzielone.
To jest wiedza, na ktora trzeba poswiecic szmat czasu.
Zgoda, mozna sobie zrobic baze w Oracle'u bez znajomosci zaplecza, ale po co ci do tego Oracle? Mozesz spokojnie uzyc MySQL.
MarIst


Mam dwa pytania:
1) dlaczego po utworzeniu użytkownika w OEM nie jest tworzony schemat w gałęzi Schema ?
2) co i gdzie zmienić aby użytkownik mógł się zalogować do bazy (Connect as) jako Normal ?
Blackhole
Ad 2) Użytkownik na 100% musi mieć uprawnienie Connect. By dodatkowo mógł coś zrobić, potrzebuje rolę Resource.
MarIst
Własnie dodałem ale to nie pomogło dalej ten użytkownik nie loguje się jako Normal tylko SYSDBA sadsmiley02.gif
Blackhole
A jako jaki użytkownik chcesz się zalogować? Użytkownicy SYS i SYSTEM (m.in.) nie mogą się logować na Normal.
MarIst
Chcę jako Normal zalogować użytkownika np. Ania który już nadane Connect oraz Resource. Niestety pojawia się ten komunikat jak widać na screenie z mojego wczesniejszego postu. Ania moze sie zalogowac gdy ustawi się jej SYSDBA.
Blackhole
Skoro Ania ma uprawnienia SYSDBA to z mojej wiedzy wynika, że nie może się logować jako Normal. Stwórz sobie jakiegoś dodatkowego usera, który będzie "zwykłym" userem, tzn. bez uprawnień administracyjnych.
redman2
Zaraz to rozwiazemy. Wklej listing z:

SELECT * FROM DBA_USERS

Pamietaj, ze musisz byc zalogowany jako SYSDBA:

sqlplus / as sysdba

Sorry za BBCode. Nie dziala

Przypomnialo mi sie cos jeszcze. Nadales uprawnienia CREATE SESSION uzytkownikowi?

GRANT CREATE SESSION TO Ania

, oczywiscie nadajesz te uprawnienia jako admin
MarIst
Potrzebna pomoc w objaśnieniu funkcji które są w zakladce Password w folderze Profiles (Oracle Enterpr. Manager):

Expire Password

Expire in: Limits the number of days after which a password expires. Select a value from the drop-down list, or enter a specific value.

Lock: Limits the number of days during which a password can be changed following the first successful login after password expiration.

Keep Password History

Keep: Specifies the number of times a password must be changed before it can be reused. Keep for is disabled if a value is specified in this field.


Keep for: Limits the number of days before a password can be reused after it expires. Keep is disabled if a value is specified in this field.



Lock account on failed logon Lock after: Limits the number of failed logon attempts allowed before a user is locked out from the account.

Lock for: Specifies the number of days the account is locked after failing the specified number of logon attempts. If UNLIMITED is specified, only the database administrator

can unlock the account.




Poprostu przetłumaczenie ich na język polski nie jest łatwe gdyż korzystając z objasnień słownika wychodzą dziwne żeczy.
redman2
Z calym szacunkiem, ale zabieranie sie za Oracle'a bez znajomosci jezyka angielskiego mija sie z celem.
Ten tekst nie jest trudny. Przetlumacze Ci to a ty za jakis czas zglosisz sie do forum z nastepnym tlumaczeniem?
Blackhole
redman2 ma rację.
MarIst
Proszę o pomoc wstydnis.gif w końcu forum po to jest aby pomagać. Wiem że dla Was te rzeczy są banalne ale mi początkującemu sprawia problem rozgryzienia pewnych objasniej zamieszczonych w pomocy.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.