Suche Tool: SQL-Code analyiseren

Hallo,

ich habe hier einige 100 mir unbekannte SQLs vorliegen und muss analysieren, auf welche Tabellen und Felder wie oft zugegriffen wird.
Es geht darum herauszufinden welche Tabellen/Felder für die Nutzer besonders interessant sind und somit oft abgefragt werden.

Gibt es ein Tool, das mir aus SQL-COde die benutzten Tabellen/Felder so extrahiert, dass ich mit den Infos weiterarbeiten kann? (in Listenform oder wie auch immer). Idealerweise sollte das Tool auf für verschiedene SQL-Dialekte funktioneren.

Mahlzeit,

ich habe hier einige 100 mir unbekannte SQLs vorliegen und
muss analysieren, auf welche Tabellen und Felder wie oft
zugegriffen wird.
Es geht darum herauszufinden welche Tabellen/Felder für die
Nutzer besonders interessant sind und somit oft abgefragt
werden.

So wird das nicht gehen. SQLs alleine haben kaum eine Aussagekraft.

Gibt es ein Tool, das mir aus SQL-COde die benutzten
Tabellen/Felder so extrahiert, dass ich mit den Infos
weiterarbeiten kann? (in Listenform oder wie auch immer).

Jedes RDBMS bietet Dir eine mehr oder weniger komfortable Lösung für diese Aufgabe; bei Oracle z.B. den Enterprise Manager bzw. den Grid Control.

Aber die Herangehensweise sollte eine andere sein. Die isolierten SQLS sagen Dir nicht, ob und wie oft sie benutzt werden, sie sagen weiters nicht aus, wie hoch der „Füllstand“ der beteiligten Tabellen ist, und ob die genannten Felder indiziert sind. Insofern wirst Du da zu keiner Aussage kommen.
Umgekehrt macht das mehr Sinn: Du beobachtest mit einem entsprechenden Tool die laufende Datenbank und stellst fest, welche SQL-Statements die meiste Last verursachen; diese kannst Du dann analysieren und ggf. optimieren. Dazu müssen die entsprechenden Anwendung in realistischen Bedingungen laufen, damit Du auch für die wirkliche Welt optimierst.

Idealerweise sollte das Tool auf für verschiedene SQL-Dialekte
funktioneren.

Es gibt herstellerunabhägige Tools wie z.B. von der Firma Quest (http://www.quest.com/Performance_Analysis_for_Oracle/). Je besser das Ergebnis werden soll, desto mehr spezialisieren sie sich auf ein RDBMS, d.h. Du mußt Dich dann doch entscheiden, ob Du das Produkt z.B. für Oracle, DB2 oder MySQL kaufst. Eine generelle Analyse kann es prinzipbedingt nicht geben.

Gruß

Sancho

Danke für die Antwort, dachte mir, dass es sowas nicht gibt.

Und die ganzen Aspekte, die du benannt hast, sind mir wohl bekannt und ich gebe in allem voll und ganz Recht.
Aber für meine Zwecke brauche ich genau die Auswertung von SQLs, nach der ich gefragt habe :wink: