Una classe VB.NET per il parsing delle stringhe SQL

Ho creato una classe in VB.NET che incapsula una stringa SELECT di SQL e la suddivide nelle sue componenti (elenco dei campi della clausola SELECT, elenco delle tabelle della clausola FROM, stringhe delle clausole WHERE, GROUP BY, ORDER BY ecc.). La classe controlla la correttezza semantica delle varie clausole SQL, ma non effettua alcun controllo sui parametri restituiti (ad esempio: controlla che FROM venga dopo SELECT e prima di WHERE, ma non se l’elenco dei campi della SELECT sia corretto sintatticamente). Cliccando qui potete scaricare la classe VB.NET con un relativo progetto di esempio (non esaustivo nell’illustrare tutti i metodi: la scoperta delle modalità di utilizzo di quelli non inclusi la lascio a voi). Ho cercato anche di generalizzare, per quanto possibile, la sintassi SQL: ho incluso quindi anche la gestione delle clausole LIMIT e TOP.

Tenete presente che la classe è stata sviluppata per uso personale, e non gestisce quindi tutte le reali necessità di parsing ma solo quelle a me necessarie; contiene comunque anche tutta una serie di metodi di manipolazione, come quelle ad esempio per rimuovere le clausole WHERE, ORDER BY ecc.

 

Annunci

No comments yet

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: