Regex zur auswertung von SQL Statements

dngfng

Aktives Mitglied
Hallo erst mal,

ich versuche auszuwerten auf welche Tabellen ein SQL läuft.

z.b. select ... from schema.x, schema.z where ....


Da ich ausschlisslich den Teil auswerten will zwischen from und einen optionelen where, habe ich bis jetzt folgendes java regex zusammen gekleistert. Ich glaube es funktioniert aber nicht so richtig.

Die Tabllen nach dennen gesucht werden sollen kommen aus einer array.

string table = tables;

".*from\\s*" +table+".*[where].*"

Ich bin mir absolut nicht sicher ob dies so richtig ist oder wie man es macht.

Danke in voraus.
 

dngfng

Aktives Mitglied
Danke für die Antwort - leider habe ich mich wohl etwas verworren ausgedrückt.

Ich habe bereits eine Array mit Tabellen, nun will ich ein bereits bestehendes SQL untersuchen ob dies die Tabellen enthält.

Könnt ihr mir bitte da weiterhelfen.
 

dngfng

Aktives Mitglied
select.*from(.*"+tabelname+".*)(where|;|$)

Danke für die Hilfe ich habe es selbst hinbekommen.
Die meisenten sql kommen leider ohne ; hier an daher habe ich noch $ für end off string hinzugefügt.
 
Ähnliche Java Themen

Ähnliche Java Themen

Neue Themen


Oben