更新情報 (2022)

これは2006年に書かれた記事で、 コードグル 、この記事で使用されているテクノロジは古くなっている可能性があります。 Java または Dotnet プログラムで使用できる優れた SQL フォーマッタを探している場合は、 このページをチェック 代わりは。無料で素晴らしい SQL クエリ フォーマッタをお探しの場合は、 インスタント SQL フォーマッタ。

序章

SQL コードは、特に処理している長くて複雑な SQL ステートメントである場合や、他の人のコードを読む必要がある場合に、フォーマットされていると、はるかに簡単かつ迅速に読み取って理解できます。まともな SQL フォーマッタを書くのは簡単なことではありません。この記事では、C# でオンライン SQL フォーマッターを作成したいと思います。この消費アプリケーションは、書式設定されていない SQL をサーバーに送信し、サーバーは書式設定された SQL をアプリケーションに返します。

コードの使用

の Web サービス www.gudusoft.com SQL コードを受け入れ、フォーマットされた SQL を返します。ここで WSDL を見てください。重要な部分を以下に示します。 beautifySql メソッドについて説明します。

  SQL を美しくする 

ステップ 1: プロキシ クラスを構築する

以下を実行…

C:>wsdl.exe http://www.gudusoft.com/SQLFormatterWebService.wsdl

… SQLFormatterWebService というクラスを含む C# ファイル SQLFormatterWebService.cs が作成されます。このクラスのメソッドが WSDL ファイルで詳述されているメソッドとどのように対応しているか、特に次のメソッドを調べてください。

public string beautifySql(string dbvendor, string sql) dbvendor: データベースが現在 MSSQL、Oracle、MySQL、および Access をサポートしている SQL ダイアレクト。 sql: SQL コードをフォーマットする必要があります。

ステップ 2: プロキシ クラスをコンパイルする

次に、自動生成されたファイルをコンパイルする必要があります。このファイルにはエントリ ポイントが含まれていないため、ライブラリとしてビルドする必要があります。

C:>csc /t:ライブラリ c:SQLFormatterWebService.cs

これにより、新しいファイル SQLFormatterWebService.dll が作成されます。

手順 3: ASP.NET アプリケーションを作成する

このアプリケーション sqlformatter.aspx は、SQL Formatter Web サービスを使用します。

<%@Assembly Name="SQLFormatterWebService" %>

<html>
   <head>
      <title>SQL Formatter Web サービスのデモ </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="jp"/></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>

手順 4: IIS サーバーでこの ASP.NET アプリケーションをセットアップする

  • 4.1 たとえば、sqlformatter.aspx を wwwroot の下に置きます。
  • 4.2 SQLFormatterWebService.dll を wwwroot の下の bin ディレクトリに配置します。
  • 4.3 ブラウザを開き、http://localhost/sqlformatter.aspx と入力します。

楽しめ!

興味がある点

この SQL Formatter Web サービスは、特にデータベース関連の Web サイトのフォーラムで広く使用できます。このフォーラムでは、多くの SQL コードが議論のためにユーザーによって送信されます。フォーラムに投稿する前に、この SQL コードをフォーマットできるとよいでしょう。

詳細については、SQL フォーマッタに関心がある場合は、次のサイトが役立ちます。

Gudu SQLFlow Live を試す

SQLFlow クラウド バージョン

週刊ニュースレターを購読する

コメントを残す