Autor Zpráva
Prefin
Profil
Ahojda všichni.
Potřebuji poradit s takovou zapeklitostí (pro mě).
Chci zjišťovat, zda existují v db tabulky v případě, že neznám jejich úplný název - pouze jedinečnou část.
Z tohohle (názvy tabulek):
xxx_xxx_xxx
xxx_xxx_cislo
xxx_xxx_xxx
xxx_xxx_cislo
xxx_xxx_xxx
xxx_xxx_cislo
potřebuji zjistit, zda se mezi názvy vyskytuje řetězec "cislo" a pokud ano tak názvy těchto tabulek vypsat.
Chci to udělat takto:
$vysl = mysql_query("SHOW TABLES");
while ($row = mysql_fetch_row($vysl)) {
....
}
Je způsob jak zjistit zda se tabulka(y) v db nachází a pak jenom dotčené vypsat?
jenikkozak
Profil
Tohle vypadá na chybný návrh databáze.
Tori
Profil
Prefin:
potřebuji zjistit, zda se mezi názvy vyskytuje řetězec "cislo"
strpos nebo pro složitější hledání regulár
Prefin
Profil
No není, to je úmyslně. Během procesů se uživatelům vytváření a odstraňují tabulky a skladba jejich názvu se tvoří:
typ+user+sluzba (typ_user_sluzba).
Během práce je třeba mimo jiného zjišťovat jaké tabulky kdo vytvořil atd.
Tabulek je v db mnohem víc a chci se vyhnout tomu tahat celý seznam a potom regulary třídit. Říkám si že by mohlo jít zjistit zda se název(y) tabulky obsahující "xxx" vyskytují a potom vypsat jenom ty - nejlépe v jednom dotazu, ale nemůžu to nějak smontovat.
Tori
Profil
SHOW TABLES LIKE '%cislo'
Prefin
Profil
Díky

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: