|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Bonjour à tous.
Je ne trouve pas comment récupérer le nom de chaque vue associé à un tablespace particulier. Le but de la manip est de supprimer toutes les vues or je crois savoir qu'aucune fonction ne permet de le faire. On peut seulement supprimer une vue si on connait son nom. Or je souhaite que mon script puisse supprimer toutes les vues sans que je sois obligé d'écrire en dur le noms de chaque vue dans mon script... PS: Je débute en sql & sgbd, donc pardonnez si je suis pas toujours clair. Merci |
|
|
00
|
|
|
#2 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
les vues ne sont pas associées à des tablespaces mais à des schémas
|
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Ok merci pour l'info ![]() J'ai trouvé des choses concernant INFORMATION_SCHEMA. J'ai même trouvé une requête qui ressemble à ça: Code :
SELECT table_name AS Name FROM INFORMATION_SCHEMA.TABLES |
|
|
00
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Bon j'ai trouvé comment récupérer la liste des vues pour un OWNER en particulier:
Code :
SELECT view_name FROM sys.all_views WHERE owner LIKE 'GRC%'; ![]() Comment à partir de cette liste supprimer chacune des view grace à la fonction DROP VIEW? |
|
|
00
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 453 ![]() |
en pl/sql, un curseur puis un execute immediate
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
|
|
#6 | ||
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Quelquechose comme ça ne fonctionne pas
Code :
|
||
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
|
|
|
00
|
|
|
#8 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Ah pardon je n'avais pas vu
![]() Bon pour un kéké comme moi en SQL, il faut être plus explicite En gros, on declare un curseur avec un SELECT. Ensuite on ouvre ce curseur Puis on FETCH (ce qui a pour effet de lire la valeur suivante dans le curseur) Ensuite je fais mon DROP Je mets enfin ma condition de sortie de la boucle. Mais à quel moment doit intervenir l'EXECUTE IMMEDIATE? De plus, dois je mettre EXECUTE IMMEDIATE c1 ? Pardon mais j'ai vraiment jamais utilisé SQL de façon :/ Merci par avance |
|
|
00
|
|
|
#9 | ||
|
Membre éclairé
![]() Inscription : novembre 2002 Messages : 533 ![]() |
tu peux également faire cela rien qu'avec du SQL
exemple : Code :
__________________
PpPool |
||
|
|
00
|
|
|
#10 | ||
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Tout simplement :
Code :
|
||
|
|
00
|
|
|
#11 |
|
Nouveau Membre du Club
![]() Inscription : octobre 2004 Messages : 126 ![]() |
Trop cool, les deux façons de faire fonctionnent sans problème.
Merci à vous! ![]()
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com