ďťż
 
Oracle i sequence ďťż
 
Oracle i sequence
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

Oracle i sequence



Greg - 03-08-2007 09:28
Oracle i sequence
  Czesc.

Jak w bazie oracle poszukać sequence do tabeli używajc do tego sql-a lub
TOAD-a.

hey.





Marek Chwojnicki - 03-08-2007 09:28

  Greg napisał(a):
> Czesc.
>
> Jak w bazie oracle poszukać sequence do tabeli używajc do tego sql-a lub
> TOAD-a.
>
O ile wiem Oracle nie wiąże sekwencji z tabelą bezpośrednio - trzeba
jeszcze do tego dołożyć trigger "before insert" który to obsłuży.

Uzywasz TOAD-a? OK, odpal sobie schema browser, znajdź tabelę o którą Ci
chodzi, w prawym oknie przejdź na zakładkę "triggers" i znajdź sobie
trigger wypełniający kolumnę o którą CI chodzi - tam znajdziesznazwę
sekwencji z której jest wypełniana.

Pomijam tak oczywiste sprawy, że jeżeli projektant bazy miał trochę
oleju w głowie, to można ją znaleźć po prostu po nazwie, bo będzie się
nazywała bardzo podobnie do tabeli którą obsługuje, np. tabela
SCHEMAT.TABELA1 byłaby u mnie obsłużona sekwencją SCHEMAT.SEQ_TABELA1.

Pozdrawiam,
Trolu




Greg - 03-08-2007 09:28

  > Uzywasz TOAD-a? OK, odpal sobie schema browser, znajdź tabelę o którą Ci
> chodzi, w prawym oknie przejdź na zakładkę "triggers" i znajdź sobie
> trigger wypełniający kolumnę o którą CI chodzi - tam znajdziesz nazwę
> sekwencji z której jest wypełniana.

Tak zrobiłem ale nie znalazłem tej nazwy, istnieje jeszcze jakiś inny
sposób?
Wiem jak nazywa sie sequence do tej tabeli ale chcialbym wiedziec jak do
tego dojść.
Ktoś kiedyś zakładał baze w której nie moge sie teraz polapac.




nawiiwan@gazeta.pl - 03-08-2007 09:28

  On 3 Sie, 08:50, Greg <greg...@poczta.onet.pl> wrote:
> > Uzywasz TOAD-a? OK, odpal sobie schema browser, znajdź tabelę o którą Ci
> > chodzi, w prawym oknie przejdź na zakładkę "triggers" i znajdź sobie
> > trigger wypełniający kolumnę o którą CI chodzi - tam znajdziesz nazwę
> > sekwencji z której jest wypełniana.
>
> Tak zrobiłem ale nie znalazłem tej nazwy, istnieje jeszcze jakiś inny
> sposób?
> Wiem jak nazywa sie sequence do tej tabeli ale chcialbym wiedziec jak do
> tego dojść.
> Ktoś kiedyś zakładał baze w której nie moge sie teraz polapac.

Zakładając, że sekwencja jest używana w triggerze to warto zobaczyć
ciało triggera.
Poniższe zapytanie da w wyniku ciałko triggera:
select trigger_body from dba_triggers where table_name like
'nazwa_tabeli'

Zwróć uwagę na wielkość liter w nazwie tabeli.

Znalazłem opis jak użyć sequence do generowania kolejnych numerów,
może to będzie przydatne:
http://jen.fluxcapacitor.net/geek/autoincr.html

Pozdrawiam,
Maciek





Adamm - 04-08-2007 00:03

  Użytkownik "Greg" <greg333@poczta.onet.pl> napisał w wiadomości
news:46B2D023.E5D600CD@poczta.onet.pl...
>> Uzywasz TOAD-a? OK, odpal sobie schema browser, znajdź tabelę o którą Ci
>> chodzi, w prawym oknie przejdź na zakładkę "triggers" i znajdź sobie
>> trigger wypełniający kolumnę o którą CI chodzi - tam znajdziesz nazwę
>> sekwencji z której jest wypełniana.
>
> Tak zrobiłem ale nie znalazłem tej nazwy, istnieje jeszcze jakiś inny
> sposób?
> Wiem jak nazywa sie sequence do tej tabeli ale chcialbym wiedziec jak do
> tego dojść.
> Ktoś kiedyś zakładał baze w której nie moge sie teraz polapac.

Nie ma reguły, że sekwencja jest użyta w trigerze.
Możesz jeszcze spotkać takie rozwiązanie, że masz przygotowaną w
procedurkę/pakiet PL/SQL, przekazujesz jej dane do wstawienia, a procedurka
pobiera z sekwencji (przu okazji np. waliduje dane) i wstawia do tabeli.

W TOADzie wpisz nazwę tabeli, naciśnij F4 i przejdź na zakładkę "Used by" ,
tam zobacz jakie pakiety, procedury, funkcje uzywają tej tabelki i ...
szukaj cierpliwie ;-) To zadziała jeżeli odpowiedni kawałek porgramu PL/SQL
jest zapisany w bazie. W przypadku, jeżeli pobranie z sekwencji wykonuje np.
formatka w aplikacji ... to masz gorzej, musiałbyś pogrzebać w kodzie
formatki.

Pozdrawiam
Adam
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Oracle, SQL, PL/SQL. Jak =?ISO-8859-2?Q?napisa=E6_zapytanie=2C?==?ISO-8859-2?Q?_kt=F3re_zwr=F3ci_nazw=EA_atrybutu=2C_kt=F3reg o?==?ISO-8859-2?Q?_warto=B6ci_spe=B3niaj=B1_zadany_warunek?= Oracle 19g +Insert +Insert +Insert... [oracle] zapytanie dynamiczne z =?ISO-8859-2?Q?=22dynamiczn=B1_?==?ISO-8859-2?Q?nazw=B1_tabeli=22?= [Oracle] jak =?ISO-8859-2?Q?ograniczy=E6_pami=EA=E6_dla_se?==?ISO-8859-2?Q?rwera=3F?= =?ISO-8859-2?Q?=5BOT=5D_Zdany_egzamin_Oracle_1Z0-007_a?==?ISO-8859-2?Q?_brak_informacji_na_stronie_Prometric_-_czy?==?ISO-8859-2?Q?_co=B6_nie_tak=3F?= [oracle] czy da =?ISO-8859-2?Q?si=EA_z_poziomu_procedury_?==?ISO-8859-2?Q?zrobi=E6_kopi=EA_zapasow=B1=3F?= [oracle 10g] czy =?ISO-8859-2?Q?mo=BFna_wy=B3=B1czy=E6_wszys?==?ISO-8859-2?Q?tkie_wi=EAzy_w_schemacie=3F?= MSSQL Express czy Oracle Express =?iso-8859-2?q?[oracle]_Jak_sprawdzi=E6_wielko=B6=E6_tabeli_=3F=3F?= =?ISO-8859-2?Q?Poszukjue_ksi=B1=BFki_"Oracle_?= =?ISO-8859-2?Q?optymalizacja_wydajno=B6ci"..?=
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • misida.pev.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com