{"id":3471,"date":"2022-04-22T23:06:34","date_gmt":"2022-04-23T07:06:34","guid":{"rendered":"https:\/\/www.gudusoft.com\/?p=3471"},"modified":"2026-07-11T22:56:12","modified_gmt":"2026-07-12T06:56:12","slug":"sql-formatter-web-service","status":"publish","type":"post","link":"https:\/\/www.gudusoft.com\/pt\/servico-web-do-formatador-sql\/","title":{"rendered":"Servi\u00e7o Web Formatador SQL"},"content":{"rendered":"<p><\/p>\n\n\n<h3 class=\"wp-block-heading\">Informa\u00e7\u00f5es atualizadas (2022)<\/h3>\n\n\n\n<p>Este \u00e9 um artigo escrito em 2006 e publicado em <a href=\"https:\/\/www.codeguru.com\/csharp\/sql-formatter-web-service\/\" class=\"rank-math-link\">guru do c\u00f3digo<\/a> , e a tecnologia usada neste artigo pode estar desatualizada. Se voc\u00ea est\u00e1 procurando um bom formatador SQL que possa ser usado em seu programa Java ou Dotnet, por favor <a href=\"https:\/\/sqlparser.com\/features\/sql-formatter.php\" class=\"rank-math-link\">confira esta p\u00e1gina<\/a> em vez disso. Se voc\u00ea est\u00e1 procurando um formatador de consulta SQL gratuito e fant\u00e1stico, verifique o <a href=\"https:\/\/www.dpriver.com\/pp\/sqlformat.htm\" class=\"rank-math-link\">Formatador SQL instant\u00e2neo.<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Introdu\u00e7\u00e3o<\/h3>\n\n\n\n<p>O c\u00f3digo SQL \u00e9 muito mais f\u00e1cil e r\u00e1pido de ler e entender quando formatado, especialmente quando se trata de uma instru\u00e7\u00e3o SQL longa e complexa, ou quando \u00e9 preciso ler o c\u00f3digo de outras pessoas. Escrever um formatador SQL decente n\u00e3o \u00e9 uma tarefa f\u00e1cil. Neste artigo, gostaria de criar um formatador SQL online no C#. Este aplicativo consumidor envia SQL n\u00e3o formatado para o servidor, que retornar\u00e1 o SQL formatado para o aplicativo.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Usando o c\u00f3digo<\/h3>\n\n\n\n<p>Um servi\u00e7o da Web em&nbsp;<a href=\"https:\/\/www.gudusoft.com\/pt\/\">www.gudusoft.com<\/a>&nbsp;aceita c\u00f3digo SQL e retorna SQL formatado. D\u00ea uma olhada no WSDL aqui. A parte importante \u00e9 mostrada abaixo; ela descreve o m\u00e9todo beautifySql.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>  Embeleze o sql <\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Etapa 1: construir a classe proxy<\/h4>\n\n\n\n<p>Executando o seguinte\u2026<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>C:&gt;wsdl.exe https:\/\/www.gudusoft.com\/SQLFormatterWebService.wsdl<\/code><\/pre>\n\n\n\n<p>\u2026 resulta em um arquivo C#, SQLFormatterWebService.cs, que cont\u00e9m uma classe chamada SQLFormatterWebService. Examine como os m\u00e9todos dessa classe correspondem aos detalhados no arquivo WSDL, especialmente o seguinte m\u00e9todo:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>public string beautifySql(string dbvendor, string sql) dbvendor: dialeto SQL do banco de dados que suporta MSSQL, Oracle, MySQL e Access atualmente. sql: o c\u00f3digo SQL precisa ser formatado.<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Etapa 2: Compilar a classe proxy<\/h4>\n\n\n\n<p>Em seguida, voc\u00ea precisa compilar o arquivo gerado automaticamente. O arquivo n\u00e3o cont\u00e9m ponto de entrada e, portanto, precisa ser compilado como uma biblioteca.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>C:&gt;csc \/t:biblioteca c:SQLFormatterWebService.cs<\/code><\/pre>\n\n\n\n<p>Isso resulta em um novo arquivo, SQLFormatterWebService.dll.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Etapa 3: Criar um aplicativo ASP.NET<\/h4>\n\n\n\n<p>Este aplicativo, sqlformatter.aspx, consome o SQL Formatter Web Service.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;%@Assembly Name=&quot;SQLFormatterWebService&quot; %&gt;\r\n\r\n&lt;html&gt;\r\n   &lt;head&gt;\r\n      &lt;title&gt;Demonstra&ccedil;&atilde;o do servi&ccedil;o Web do SQL Formatter &lt;\/title&gt;\r\n   &lt;\/head&gt;\r\n\r\n   &lt;body&gt;\r\n    &lt;form runat=&quot;server&quot; action=&quot;&quot;&gt;\r\n          &lt;asp:textbox id=&quot;inputsql&quot; text=&quot;select f1,f2 from t1&quot;\r\n                       textmode=&quot;MultiLine&quot; rows=&quot;10&quot; columns=&quot;60&quot;\r\n                       wrap=&quot;False&quot; runat=&quot;server&quot;\/&gt;\r\n   &lt;br&gt;&lt;asp:button text=&quot; Format Code &quot; onclick=&quot;onFormat&quot;\r\n                          runat=&quot;server&quot; \/&gt;\r\n          &lt;br&gt;&lt;asp:textbox id=&quot;outputsql&quot; textmode=&quot;MultiLine&quot;\r\n                           rows=&quot;10&quot; columns=&quot;60&quot; wrap=&quot;False&quot;\r\n                           runat=&quot;server&quot;\/&gt;\r\n\r\n   &lt;input type=&quot;hidden&quot; name=&quot;trp-form-language&quot; value=&quot;pt&quot;\/&gt;&lt;\/form&gt;\r\n   &lt;\/body&gt;\r\n&lt;\/html&gt;\r\n\r\n&lt;script language=&quot;c#&quot; runat=&quot;server&quot;&gt;\r\n   void onFormat (Object sender, EventArgs e)\r\n{\r\n      SQLFormatterWebService sqlformatter =\r\n         new SQLFormatterWebService();\r\n      outputsql.Text =\r\n         sqlformatter.beautifySql(&quot;mssql&quot;,inputsql.Text);\r\n}\r\n&lt;\/script&gt;<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Etapa 4: configure este aplicativo ASP.NET no seu servidor IIS<\/h4>\n\n\n\n<ul><li>4.1 Coloque o sqlformatter.aspx em wwwroot, por exemplo.<\/li><li>4.2 Coloque o SQLFormatterWebService.dll no diret\u00f3rio bin em wwwroot.<\/li><li>4.3 Abra seu navegador e digite http:\/\/localhost\/sqlformatter.aspx.<\/li><\/ul>\n\n\n\n<p>Apreci\u00e1-lo!<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Pontos de interesse<\/h3>\n\n\n\n<p>Este servi\u00e7o web de formatador SQL pode ser amplamente utilizado, especialmente em f\u00f3runs de sites relacionados a bancos de dados, onde muitos c\u00f3digos SQL ser\u00e3o enviados pelos usu\u00e1rios para discuss\u00e3o. Seria interessante se esse c\u00f3digo SQL pudesse ser formatado antes de ser publicado no f\u00f3rum.<\/p>\n\n\n\n<p>Para mais informa\u00e7\u00f5es, estes sites s\u00e3o \u00fateis se voc\u00ea estiver interessado em um formatador SQL:<\/p>\n\n\n\n<ul><li>Servi\u00e7o Web Formatador SQL<\/li><li><a href=\"http:\/\/www.wangz.net\/gsqlparser\/sqlpp\/sqlformat.htm\">Formatador SQL Online Gratuito<\/a><\/li><li><a href=\"http:\/\/www.sqlparser.com\/\">Mecanismo de an\u00e1lise SQL usado pelo formatador SQL<\/a><\/li><\/ul>\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Informa\u00e7\u00f5es atualizadas (2022): Este artigo foi escrito em 2006 e publicado no CodeGuru, portanto, a tecnologia utilizada pode estar desatualizada. Se voc\u00ea procura um bom formatador de SQL para usar em seu programa Java ou .NET, consulte esta p\u00e1gina. Se voc\u00ea busca um formatador de consultas SQL gratuito e excelente, confira o Instant SQL Formatter. Introdu\u00e7\u00e3o: O c\u00f3digo SQL \u00e9 muito mais f\u00e1cil e r\u00e1pido de ler e entender quando formatado, especialmente quando se trata de uma instru\u00e7\u00e3o SQL longa e complexa\u2026<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[1],"tags":[],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":5}},"_links":{"self":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3471"}],"collection":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/comments?post=3471"}],"version-history":[{"count":5,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3471\/revisions"}],"predecessor-version":[{"id":6620,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/posts\/3471\/revisions\/6620"}],"wp:attachment":[{"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/media?parent=3471"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/categories?post=3471"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.gudusoft.com\/pt\/wp-json\/wp\/v2\/tags?post=3471"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}