Información actualizada (2022)
Este es un artículo escrito en 2006 que fue publicado en gurú del código La tecnología utilizada en este artículo puede estar desactualizada. Si busca un buen formateador SQL que pueda usarse en su programa Java o .NET, por favor... Consulta esta página En cambio, si busca un formateador de consultas SQL gratuito y fantástico, consulte Formateador SQL instantáneo.
Introducción
El código SQL es mucho más fácil y rápido de leer y comprender cuando está formateado, especialmente si se trata de una sentencia SQL larga y compleja, o si se debe leer el código de otros usuarios. Escribir un formateador SQL decente no es tarea fácil. En este artículo, me gustaría crear un formateador SQL en línea en C#. Esta aplicación, que consume muchos recursos, envía SQL sin formato al servidor, que lo devuelve con formato a la aplicación.
Usando el Código
Un servicio web en www.gudusoft.com Acepta código SQL y devuelve SQL formateado. Consulte el WSDL aquí. La parte importante se muestra a continuación; describe el método beautifySql.
Embellecer el sql
Paso 1: Construir la clase proxy
Ejecutando lo siguiente…
C:>wsdl.exe http://www.gudusoft.com/SQLFormatterWebService.wsdl
… da como resultado un archivo C#, SQLFormatterWebService.cs, que contiene una clase llamada SQLFormatterWebService. Examine cómo los métodos de esta clase se corresponden con los detallados en el archivo WSDL, especialmente el siguiente método:
cadena pública beautifySql(string dbvendor, string sql) dbvendor: dialecto SQL que la base de datos admite actualmente en MSSQL, Oracle, MySQL y Access. sql: el código SQL debe formatearse.
Paso 2: Compilar la clase proxy
A continuación, debe compilar el archivo generado automáticamente. Este archivo no contiene ningún punto de entrada, por lo que debe compilarse como una biblioteca.
C:>csc /t:biblioteca c:SQLFormatterWebService.cs
Esto da como resultado un nuevo archivo, SQLFormatterWebService.dll.
Paso 3: Crear una aplicación ASP.NET
Esta aplicación, sqlformatter.aspx, consume el servicio web SQL Formatter.
<%@Assembly Name="SQLFormatterWebService" %>
<html>
<head>
<title>Demostración del servicio web SQL Formatter </title>
</head>
<body>
<form runat="server" action="">
<asp:textbox id="inputsql" text="select f1,f2 from t1"
textmode="MultiLine" rows="10" columns="60"
wrap="False" runat="server"/>
<br><asp:button text=" Format Code " onclick="onFormat"
runat="server" />
<br><asp:textbox id="outputsql" textmode="MultiLine"
rows="10" columns="60" wrap="False"
runat="server"/>
<input type="hidden" name="trp-form-language" value="es"/></form>
</body>
</html>
<script language="c#" runat="server">
void onFormat (Object sender, EventArgs e)
{
SQLFormatterWebService sqlformatter =
new SQLFormatterWebService();
outputsql.Text =
sqlformatter.beautifySql("mssql",inputsql.Text);
}
</script>
Paso 4: Configure esta aplicación ASP.NET en su servidor IIS
- 4.1 Coloque el sqlformatter.aspx bajo wwwroot, por ejemplo.
- 4.2 Coloque SQLFormatterWebService.dll en el directorio bin bajo wwwroot.
- 4.3 Abra su navegador y escriba http://localhost/sqlformatter.aspx.
¡Disfrútala!
Puntos de interés
Este servicio web de formateo de SQL se puede usar ampliamente, especialmente en foros de sitios web relacionados con bases de datos, donde los usuarios envían gran cantidad de código SQL para su discusión. Sería útil que este código SQL se pudiera formatear antes de publicarlo en el foro.
Para obtener más información, estos sitios son útiles si está interesado en un formateador SQL:
- Servicio web de formateador SQL
- Formateador SQL gratuito en línea
- Motor analizador SQL utilizado por el formateador SQL
Si te gusta leer esto, explora nuestros otros artículos a continuación: