Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usuwanie widokow za pomoca Trigera, Usuwanie widokow za pomoca Trigera z wykorzystaniem tabel systemowych
usiek1984
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 7.08.2008

Ostrzeżenie: (0%)
-----


Czesc

Wiecie moze jak zrobic cos takiego:

Mam jakas tablice np. tab1 i w oparciu o nia jest utworzony jakis
widok. view1 Chodzi o znalezenie sposobu na to ze jesli zmieni sie nazwa tablicy tab1
na jakas inna to silnik PostgreSql automatycznie usunie widok. Mam to wykonac za pomoca Trigera z wykorzystaniem precedury w plpgsql. Co wiecej z tego co zdazylem obczaic to musze wykorzystac tablice systemowe . Poprostu chce zrobic cos takiego ze jak zmienie sobie nazwe tabeli to triger usunie mi wszystkie widoki bo ten widok juz bedzie bezuzyteczny bo nie ma juz takiej nazwy tabeli.

Prosze o pomoc. Dzieki

Ten post edytował usiek1984 7.08.2008, 12:08:05
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Sedziwoj
post
Post #2





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Zrób
  1. ALTER TABLE <stara_nazwa> RENAME TO <nowa_nazwa>;
a potem zobacz sobie jeszcze raz widoki...
Go to the top of the page
+Quote Post
usiek1984
post
Post #3





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 7.08.2008

Ostrzeżenie: (0%)
-----


Czesc

Jesli zmienie nazwe tabeli to potem widkok dalej istnieje,jak teraz mam go usunac, poza tym ma to sie dziac automatycznie,to znaczy w momencie jesli robie alter table to usuwam widoki jesli nazwa tabeli juz jest inne(w porownaniu do poczatkwoej nazwy tabeli). Trzeba uzyc tutaj chyba Trigerow, tak samo chyba nalezy uzyc tabel systemowych w celu pobrania nazw widokow ktroe istnieja dla danej tabeli.
Go to the top of the page
+Quote Post
Zbłąkany
post
Post #4


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

Ostrzeżenie: (0%)
-----


Usiek ciekawe, jak zamierzasz wywołać trigger po zmianie nazwy tabeli (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Podpowiadam: to jest niemożliwe (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) Jedyne rozwiązanie, które mi przychodzi na myśl to użycie crona. Powiedzmy co 5 minut odpalasz skrypt, który wszystko pozmienia za Ciebie (dodajesz zmianę nazwy tabeli z aaa na bbb do kolejki i czekasz aż się wykona) (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Sedziwoj
post
Post #5





Grupa: Zarejestrowani
Postów: 793
Pomógł: 32
Dołączył: 23.11.2006
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@Zbłąkany
A ja sugeruję że usuwanie jest bez sensu, bo widoki są automatycznie poprawiane pod względem nazw, więc ciągle działają, więc nie widzę najmniejszego sensu aby je usuwać.

Ten post edytował Sedziwoj 8.08.2008, 12:38:17
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 11:58