Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MSSQL - usuwanie tabel zwróconych przez zapytanie
Forum PHP.pl > Forum > Bazy danych > Microsoft SQL Server / MSDE
deme
Witam,

Muszę w bazie danych MSSQL usunąć wszystkie tabele zawierające w swojej nazwie "TMP".

Korzystam z tego zapytania, aby wyświetlić wszystkie te tabele:

  1. SELECT name FROM sysobjects WHERE type = 'U' AND name LIKE '%tmp%'

Niestety, kiedy już mam je jak na tacy, nie potrafię znaleźć sposobu, aby je najzwyczajniej w świecie usunąć. Czy mogę liczyć na Waszą pomoc?

Z góry dziękuję i pozdrawiam winksmiley.jpg
reaktor
Uzyj funkcji EXEC - umozliwia uruchamianie
dynamicznie stworzonych zapytan trzymanych
w postaci stringa.
  1. DECLARE @nazwaTablicy
  2.  
  3. SELECT @nazwaTablicy=name FROM sysobjects WHERE type = 'U' AND name = 'konkretnatablica'
  4.  
  5. EXEC ('DROP TABLE ' + @nazwaTablicy)

Przyklad powyzej wywali Ci co prawda tylko jedna tablice,
ale jestes juz na dobrej drodze smile.gif
Poczytaj jeszcze o LOOP, zeby moc sie tak przeleciec
po wszystkich tabelach z Twojego zapytania.

/przepraszam wszystkich za odgrzebywanie trupa, ale po prostu
otworzylem jednego z najnowszych postow ciagle bez odpowiedzi smile.gif/
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-2024 Invision Power Services, Inc.