Hallo zusammen,
ich möchte aus meiner DB eine ganze reihe tabellen löschen, die alle mit dem namen „jos_“ anfangen. kann man da etwas vereinfachen in dem man nicht jeden namen einzelnt angibt?
Gruß
Alex
Moin, Alex,
schau mal im Handbuch nach, ob tablename im Drop-Statement ein Expression sein darf. Wenn ja, kannst Du Dir die Tablenames aus dem SysCatalog besorgen.
Andere Möglichkeit: Drop-Anweisungen mit Editor erstellen und Utility rattern lassen.
Gruß Ralf
Hi!
ich möchte aus meiner DB eine ganze reihe tabellen löschen,
die alle mit dem namen „jos_“ anfangen. kann man da etwas
vereinfachen in dem man nicht jeden namen einzelnt angibt?
Unter Oracle würde ich dies dynamisch oder per Script machen:
SQL\>spool drop\_table.sql
SQL\>select 'drop table '||table\_name||';'
from user\_tables
where table\_name like 'JOS%';
SQL\>@drop\_table.sql
Ungetestet aus dem Handgelenk - also lieber mal vorher testen
Grüße,
Tomh
es handelt sich bei der Datenbank um eine MySQL, aber trotzdem danke für deine antwort
Moin, Alex,
schau mal im Handbuch nach, ob tablename im
Drop-Statement ein Expression sein darf. Wenn ja, kannst Du
Dir die Tablenames aus dem SysCatalog besorgen.
keine ahnung was du mir damti sagen willst ^^ aber ich denke das soll soviel heißen wie: „es gibt keine WHERE klausel“
Andere Möglichkeit: Drop-Anweisungen mit Editor erstellen und
Utility rattern lassen.
die ganzen Anweisungen aus ner datei lesen zu lassen bewirkt nur das die zugriffzeit reduziert wird, aber ich suche eher nach einer lösung die mir das schreiben jeder einzelner anweisung erspart
Moin, Alex,
schau mal im Handbuch nach, ob tablename im
Drop-Statement ein Expression sein darf. Wenn ja, kannst Du
Dir die Tablenames aus dem SysCatalog besorgen.keine ahnung was du mir damti sagen willst
genau das, was da steht, ich weiß doch nicht, welches DBMS Du benutzt.
Gruß Ralf
[…]ich weiß doch nicht, welches DBMS Du benutzt.
ich arbeite mit phpmyadmin, also mysql