Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mySql] Kasowanie tabel z prefixem, masowo :)
dopy
post
Post #1





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 25.07.2005

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


Witam,

Czy język mySQL pozwala na usunięcie z bazy wszystkich tabel z danym prefixem ? Chodzi o coś a'la DROP TABLE prefix_% (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Patrzyłem w manual mySQL jednak jakoś nie lubie tego manuala i ciężko szuka mi się tam informacji. Jeśli jednak język sql nie oferuje takiego cuda to w jaki sposób byście to rozwiązali ? Przyjmijmy że nie wiem jakie są tabele, znam tylko prefix - wtedy wyszukiwać tabele, wrzucać do tablicy i kolejno DROP'ować ? Ale przy takim postępowaniu, duża ilość tabel = masa zapytań do sql.

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
dopy
post
Post #2





Grupa: Zarejestrowani
Postów: 80
Pomógł: 0
Dołączył: 25.07.2005

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


  1. <?php
  2. function usun_tabele_pref($prefix) {
  3. $usun=array(); $ile=0;
  4. $xx=mysql_query('show tables like "'.$prefix.'_%"');
  5. while($xxx = mysql_fetch_array($xx)) {
  6. $usun[]=$xxx[0]; $ile++;
  7. }
  8. $tabele=implode(", ",$usun);
  9. mysql_query("DROP TABLE ".$tabele);
  10. return $ile;
  11. }
  12. ?>


Taka mała funkcja dla leniwych (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Zobaczymy jak sobie poradzi z dużymi bazami (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) To co zwraca to oczywiście ilość usuniętych tabel (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pozdrawiam.
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.10.2025 - 01:17