업데이트된 정보(2022)
이 글은 2006년에 쓰여진 글입니다. 코드구루 , 이 문서에 사용된 기술은 오래되었을 수 있습니다. Java 또는 Dotnet 프로그램에서 사용할 수 있는 좋은 SQL 포매터를 찾고 있다면 이 페이지를 확인하세요 대신. 무료로 사용할 수 있는 훌륭한 SQL 쿼리 포맷터를 찾고 있다면 다음을 확인하세요. 즉각적인 SQL 포매터.
소개
SQL 코드는 포맷팅되어 있으면 훨씬 더 쉽고 빠르게 읽고 이해할 수 있습니다. 특히 길고 복잡한 SQL 문을 다루거나 다른 사람의 코드를 읽어야 할 때 더욱 그렇습니다. 제대로 된 SQL 포맷터를 작성하는 것은 쉬운 일이 아닙니다. 이 글에서는 C#를 사용하여 온라인 SQL 포맷터를 만들어 보겠습니다. 이 애플리케이션은 포맷팅되지 않은 SQL을 서버로 전송하고, 서버는 포맷팅된 SQL을 애플리케이션으로 반환합니다.
코드 사용
웹 서비스 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 웹 서비스를 사용합니다.
<%@Assembly Name="SQLFormatterWebService" %>
<html>
<head>
<title>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="ko"/></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 포매터 웹 서비스는 특히 데이터베이스 관련 웹사이트 포럼에서 널리 사용될 수 있습니다. 사용자들이 토론을 위해 많은 SQL 코드를 제출하는 경우가 많기 때문입니다. 이 SQL 코드를 포럼에 게시하기 전에 포맷팅할 수 있다면 좋을 것 같습니다.
자세한 내용은 SQL 포매터에 관심이 있는 경우 다음 사이트에서 확인할 수 있습니다.
- SQL 포매터 웹 서비스
- 무료 온라인 SQL 포매터
- SQL 포매터에서 사용하는 SQL 파서 엔진
이 글을 재미있게 읽으셨다면 아래의 다른 기사도 읽어보세요.