Autor Zpráva
gardener
Profil
Ahoj, chtěl bych se zeptat, jak lze pomocí PHPmyAdmina, nebo pomoci SQL dotazu nalezt urcity sloupec? Resp. to v jake tabulce se vyskytuje.
Mam velke mnozstvi tabulek a potrebuji provest import do nekolika z nich ale u nekterych sloupcu nevim, v jake tabulce se nachazeji a prochazet jednu po druhe abych to zjistil je v takovem mnozstvi je skoro nemozne.

Diky za jakoukoliv radu.
ShiraNai7
Profil
Kdyz neco importujes tak snad vis kam to chces importovat, nebo ne?
gardener
Profil
Ne, to vážně kolikrát nevím, jde o cca 50 tabulek, mám jen seznam s názvy sloupců, které se importují, nic více a u některých sloupců prostě nevím, kde se v té struktuře nacházejí.
Kajman_
Profil *
Buď
show tables
show columns from `jednatabulka`


Nebo v novějších verzích mysql
SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME = 'nazevsloupce'
gardener
Profil
Kajman:
Zkoušel jsem ten druhy dotaz ale ten prohledava v DB INFORMATION_SCHEMA ale uz ne primo v databazi, kde je umistena tabulka. Pokud jsem to zkusil zapsat :

SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE
FROM MOJE_DATABAZE.COLUMNS
WHERE COLUMN_NAME = 'nazevsloupce'


TAK take vysledek nedostanu.
Kajman_
Profil *
Tak si to filtrujte podle ještě podle TABLE_SCHEMA.

SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME = 'nazevsloupce'
AND TABLE_SCHEMA='MOJE_DATABAZE'
gardener
Profil
Toto reseni take navraci nulovy vysledek, neni mozne primo prohledavat v dane DB?
Kajman_
Profil *
information_schema je speciální databáze, viz.
http://dev.mysql.com/doc/refman/5.1/en/information-schema.html

To, že to nevrací žádné řádky může být tím, že tam není kombinace takového sloupce a databáze. Možná se něco liší jen velikostí písmen, ale myslím, že by tam mělo být porovnání, které velikost ignoruje.
gardener
Profil
Díky, našel jsem tam seznam všech sloupců, takže už není problém je vyhledat, děkuji moc za rady.

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:

0