2016-03-31 7 views
0

Ich mag es, eine Abfrage zu erstellen, die in einer vollständigen Datenbank in allen Tabellen suchen kann.Suche In der vollständigen Datenbank

Ex. Suchstring: 9049 Jetzt im Ergebnis brauche ich Suchergebnis aus allen Tabellen, wo diese Zeichenfolge übereinstimmt. Einfach kann ich nicht LIKE auf alle Felder der Tabelle schreiben.

Dank Im Voraus.

+0

Welche Plattform/welches Tool verwendet sie, um mit Ihrer Datenbank zu interagieren? –

+0

@SantoshRamKunjir Nop. Bis jetzt habe ich nur nach bestimmten Feldern gesucht. Dies ist das erste Mal, dass ich konfrontiert wurde. Also nicht zu verstehen, was zu tun ist. –

+0

@AshwaniGoyal Codeigniter PHP-Framework. –

Antwort

0

Sie können eine SQLDump der Datenbank (und ihrer Daten) dann diese Datei suchen. oder Sie können einen Blick in die Tabelle information_schema werfen. Es enthält eine Liste aller Tabellen und aller Felder in einer Tabelle. Sie können dann Abfragen mit den Informationen ausführen, die Sie von dieser Tabelle erhalten haben.

0

konnte lesen Sie zunächst den Tabellen alle aus:

SELECT table_name FROM information_schema.tables WHERE table_schema = 'yourdatabasename' 

und dann eine Schleife durch alle Tabellen und erhalten Sie alle Spalten:

SELECT column_name FROM information_schema.columns 
WHERE table_schema = 'yourdatabasename' AND table_name = 'thetablenamefromyourloop' 

und dann eine dynamische Anweisung, das ist bauen baut die WHERE Klausel basierend auf Ihrem Suchbegriff.

oder um nur alle Informationen zu bekommen einfach alles vorlesen. Dies enthält alle Informationen über alle Tabellen und Spalten, die nützlich sein könnten, um nur in allen Varchar- und Textfeldern usw. zu suchen.

SELECT * FROM information_schema.columns 
WHERE table_schema = 'yourdatabasename' 
Verwandte Themen