2009-11-06 6 views
1

은 내가 디버깅 해요 몇 가지 큰 혼란 SQL 프로 시저를 가지고 있고, 그들은 많이 중첩 된 괄호를 많이하는 경향이 :괄호를 자동 접기하는 텍스트 편집기입니까?

SELECT * FROM (SELECT F1,F2 FROM TABLE1 AS X LEFT JOIN 
(SELECT F9,F8 FROM (SELECT F13,F14 FROM TABLE4) AS J INNER JOIN TABLE3 ON...) AS B 
ON X.F1=B.F9) AS X1 

내가 자동으로 표시 할 수 있습니다 편집기와 선택적으로 붕괴/배를 찾고 있어요를 각 괄호는 쉽게 읽을 수 있도록 설정됩니다. 나는 반복적으로 타격하여 Visual Studio에서이 작업을 수행 할 수 있습니다

SELECT * FROM ... AS X1 

SELECT * FROM (SELECT F1,F2 FROM TABLE1 AS X LEFT JOIN ... AS B ON X.F1=B.F9) AS X1 

Ctrl 키를 쉬프트 -] 세트를 선택하고 Ctrl-MH는 축소 할 수 있습니다. 그러나이 중 일부는 수백 줄의 선이 있으며 전체 문서를 자동으로 마크 업할 수있는 편집자가 있으면 좋을 것입니다.

제안 사항?

답변

1

폴딩을 수행하지 않을 것이라고 생각하지만 SQL Server를 사용하는 경우 SQL을 다시 포맷하는 명령이 포함 된 SQL Prompt을 적극 권장합니다. 거대하고 다루기 힘든 저장 프로 시저를 디버깅/이해할 때 이것이 큰 도움이된다는 것을 알았습니다.

1

비슷한 일을해야 할 필요가 있습니다. 나는 의견에 대한 요청을 게시하고 (당신이 말할 수있는 RFC) 제안한다. 링크는 Stack Overflow입니다. 나는 그것이 대부분의 편집자들에게 표준 기능이 아니라는 것에 놀랐다. 문제는 문자 스트림에서 텍스트의 구분 된 블록을 구문 분석하는 것보다 어렵다는 것이다. 어쩌면 XML과 CSS를 사용하면 미래에 얇은 유형의 것을 쉽게 처리 할 수 ​​있습니다.

0

편집 : 신경 쓰지 마세요, 작동하지 않습니다. )이 (가) 가까이서 처리되지 않습니다. 답을 남겨두면 누구도 시간을 낭비하지 않습니다.

한 줄에 열린 괄호 나 닫는 괄호가 하나만 있도록 줄을 분할하려면 메모장 ++에서 사용자 정의 언어를 사용하고 () 폴더를 각각 열고 닫습니다. 또한 SQL 키워드 W 주석 분리.자가 분리되어 색상이 지정 될 수 있습니다. Notepad ++에는 SQL이 내장되어 있지만 내장 된 정의는 괄호로 묶지 않습니다.

1

이맥스에 대해 HideShow mode을 참조하십시오. 이식은 니스 모드에서 원하는 것을 정확하게 수행합니다.