[SQL] 어떻게 읽을 더 쉽게 잘 포맷 코드를 읽을 수있는 블록으로 SQL 문자열을 포맷하기
SQL어떻게 읽을 더 쉽게 잘 포맷 코드를 읽을 수있는 블록으로 SQL 문자열을 포맷하기
나는 종종 내가 다음 내 코드에서 사용하는 문장의 기초를 생성하기 위해 MS 액세스에서 제공하는 것과 같은 쿼리 빌더 도구를 사용하여 동적 SQL 문을 기반으로 코드를 작성하고합니다.
그러나,이 SQL 문이 잘 포맷하면 코드를 읽기 훨씬 쉽습니다. 긴 포맷되지 않은 SQL 문이 본질적으로 무엇을 타고 멋진 텍스트 문자열이나 쉽게 읽을 수 코드의 좋은 블록에 그것을 설정하는 최선의 방법에 대해 할 수있는 모든 사용자의 서비스 조언.
해결법
-
==============================
1.내가 과거에이 기술을 사용하고,이이 일을 가장 좋은 방법입니까?
내가 과거에이 기술을 사용하고,이이 일을 가장 좋은 방법입니까?
그것의 열쇠입니다 :
훨씬 쉽게 그래서 읽기 만든다 다음 "A"절차를 사용하여 A..
당신이 (MS Access에서 같은) 쿼리 빌더를 사용하여 SQL 문자열을 빌드하는 경우 B., 내장 SQL을하는 유틸리티를 구성하는 것이 좋다 아래 다시 포맷 그것 때문에 그 결과 SQL의 외모 거의 정확히 같은 것을. (나는 그러나 다른 사람이 있습니다 www.sqlinform.com 사용하거나 수동으로 작업을 수행 할 수 있습니다)
C.는 SQL 문자열이 VBA에 내장 될 때, 각 라인 beofre vbCrLf을 추가하여 결과 문자열은 라인 브레이크를 가지고 잘 줄 것 같은 쉽게 읽을 직접 실행 창에 출력 할 수 있습니다. (그것은 로켓 과학이 아니다)
Public Sub aa(ByRef a As String, ByVal b As String) ' This is deliberately not a function, although it behaves a bit like one a = a & vbCrLf & b End Sub ' The function is called in code like this: Dim a as string a = "" aa a, " SELECT CUR.txtLevel AS [Current] " aa a, " , NLPMi.strFullName AS [Full Name] " aa a, " , NLPMi.DOB AS [Birthday] " aa a, " , NLPMi.Surname AS [Surname Name] " aa a, " , TOOLS.txtWCMTool " aa a, " FROM ( ( ( tblPeopleWCMSKILLSByYear AS SKILLS" aa a, " LEFT JOIN tblSkillLevels AS CUR " aa a, " ON SKILLS.bytCurrentID = CUR.atnSkillLevelID aa a, " ) " aa a, " INNER JOIN [qrylstNames-LPMi] AS NLPMi " aa a, " ON SKILLS.intPeopleID = NLPMi.atnPeopleRecID aa a, " )" aa a, " INNER JOIN tblWCMTools AS TOOLS " aa a, " ON SKILLS.intWCMSkillID = TOOLS.atnWCMToolID" aa a, " ) " aa a, " WHERE ( ( (SKILLS.bytYearID) = YEAR(DATE())-2012 ) " aa a, " AND CUR.txtLevel >= " & MyVariable1 & " " aa a, " AND TOOLS.txtWCMTool = '" & MyVariable2 & "'" aa a, " ) " aa a, " ORDER BY NLPMi.strFullName" aa a, " ", " & MyVariable3 & "" aa a, " ;"
그 참고 :
하비
from https://stackoverflow.com/questions/31684546/how-to-format-a-sql-string-into-a-readable-block-of-code-that-is-well-formatted by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 중복 레코드를 삭제 (0) | 2020.07.15 |
---|---|
[SQL] 어떻게 콤보 <모두 선택>에 대한 기능을 추가하려면 Microsoft Access 폼에서 (0) | 2020.07.15 |
[SQL] 동일한 ID를 갖는 행 테이블에서 컬럼을 사용하여 문자열 값을 형성하는 가장 좋은 방법이 무엇입니까? (0) | 2020.07.15 |
[SQL] SQL 서버에서 하버 사인 식의 SQL 쿼리 (0) | 2020.07.15 |
[SQL] SQL 쿼리는 값 목록에 여러 범위에 대한 일치하는 번호 목록을 번역하기 (0) | 2020.07.15 |