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

読みやすくするために設定された各括弧を自動的にマークし、オプションで折りたたむ/折りたたむことができるエディターを探しています。

SELECT * FROM ... AS X1

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

Visual Studio でこれを行うには、ctrl-shift-] を繰り返し押してセットを選択し、次に ctrl-mh を押してそれを折りたたみます。しかし、これらのものの中には数百行の長さのものもあり、ドキュメント全体を自動的にマークアップできるエディターがあればいいのにと思います。

助言がありますか?

4

4 に答える 4

1

折りたたむことはできないと思いますが、SQL Serverを使用している場合は、SQLを再フォーマットするコマンドを含むSQLプロンプトを強くお勧めします。これは、巨大で扱いにくいストアドプロシージャをデバッグ/理解するときに非常に役立ちます。

于 2009-11-06T12:55:46.250 に答える
1

私は同様のことをする必要があります。コメントと提案のリクエストを投稿しました (あなたが言うことができる RFC)。それへのリンクはここにあります:スタックオーバーフロー。ほとんどのエディターの標準機能ではないことに驚いています。問題は、文字のストリームから区切られたテキストのブロックを解析するのが見た目よりも難しいことだと思います。将来的には、XML と CSS によって、薄いタイプの処理が簡単になるかもしれません。

于 2010-09-13T16:04:40.000 に答える
1

emacs のHideShow モードを参照してください。これは、Lisp モードで必要なことを正確に実行します。

于 2010-12-01T01:10:43.737 に答える
0

編集:気にしないでください、うまくいきません。)近いものとして扱われていません。誰もそれを試して時間を無駄にしないように、答えを残します。

行に開き括弧または閉じ括弧が 1 つしかないように行を分割する場合は、Notepad++ でユーザー定義言語を使用し、make()フォルダーをそれぞれ開いて閉じることができます。SQL キーワードとコメント区切り文字を定義して、色を付けることもできます。もちろん、Notepad ++にはSQLが組み込まれていますが、組み込みの定義は括弧で折りたたまれません。

于 2010-09-13T16:35:47.923 に答える