2010-07-26 12 views
7

Ho cercato una libreria/codice sorgente libero per formattare le query SQL, preferibilmente in .NET, per un po 'di tempo. Anche dopo aver cercato alcune delle risposte qui su SO, sono quasi al punto in cui sono disposto a credere che non esista niente del genere.Esiste una libreria di formattazione SQL gratuita per .NET?

La cosa più vicina che ho trovato, un progetto chiamato sqlformat, non sembra essere attivo, e non supporta nemmeno un sottoinsieme funzionante delle funzionalità di SQL per la formattazione.

Ci sono delle librerie di formattazione SQL gratuite o open source? Non voglio un prodotto in scatola, in quanto ho bisogno di integrare questa funzionalità in uno strumento che sto costruendo. Neanche i servizi Web sono accettabili, poiché quelli che ho trovato come T-SQL Tidy non si sono dimostrati molto affidabili.

+0

Qual è lo scopo? riformattare il codice prima dell'esecuzione, correggere la formattazione in una finestra di query o qualcos'altro? – StingyJack

+0

Questo è uno strumento interno che consente ai nostri sviluppatori di riformattare il testo (SQL è solo uno dei casi d'uso) per revisione e coerenza. SQL può essere sputato fuori dalla nostra applicazione in un formato a riga singola, ed è bello poterlo tradurre anche in un formato leggibile. –

risposta

3

Non so una versione gratuita, ma ce n'è uno qui per soli $ 100 e puoi provarlo per 60 giorni (scegli la versione API).

http://www.dpriver.com/buynow.php

Non è gratuito, ma a $ 100, è probabilmente meno di 2 ore del vostro tempo cercando di trovare/integrare una libera uno

12

ho iniziato un open-source .Net 2.0 T-SQL libreria di formattazione un paio di mesi fa, ed è ora ufficialmente "v1 Fatto", senza problemi noti: http://www.architectshack.com/PoorMansTSqlFormatter.ashx

Ho anche creato un servizio di formattazione SQL online (come SQLTidy e molti altri, tranne in questo caso il libreria di formattazione che lo guida è open-source e pienamente funzionale): http://poorsql.com/

Siamo spiacenti, è tardi, ma speriamo che questo aiuti qualcun altro là fuori. Naturalmente, qualsiasi feedback sarebbe fantastico!

NOTA BENE: È concesso in licenza AGPL, quindi non è appropriato per l'integrazione in applicazioni distribuite con licenza commerciale; ma per qualsiasi tipo di processo interno (integrazione continua/qualità del controllo sorgente) dovrebbe andare bene.

(Modifica: Aggiornato lo stato della biblioteca)

+2

Questa libreria ha funzionato molto bene per me, e ora c'è un Nuget già imballato: http://nuget.org/packages/PoorMansTSQLFormatter/ –

+0

Grazie per la nota di licenza. Citazione dal sito Web: "Se si sceglie di ridistribuire/esporre la funzionalità, è necessario rendere la fonte disponibile ai destinatari/utenti (anche di un servizio Web)." http://www.architectshack.com/PoorMansTSqlFormatter.ashx#License__Redistribution_7 – Julian

2

So che questo è un vecchio post, ma non c'erano un sacco di buone risposte. Ho avuto questa stessa domanda e ho trovato questa soluzione per VB6 su VBForums di si_the_geek - uno dei loro super moderatori.

VB Forums Thread for formatting SQL Select (VB6)

Avendo lavorato con VB6 e VB.NET, era semplice da convertire. La parte inferiore del filo ha il link VB.NET o si può arrivare ad essa direttamente da qui:

VB.NET SQL Formatting Module

si dovrebbe essere in grado di convertire questo in C# con uno degli strumenti di conversione online senza problemi.

Attenzione, tuttavia, la libreria non è un codice commerciale, funziona molto bene con lo per SELEZIONI abbastanza semplici. Per un'istruzione SQL complessa con più sottoselezioni, ho trovato errori nell'SQL risultante.

migliori saluti,

David

ps. O si....è gratis! :)

Problemi correlati