2011-08-12 16 views
6

非常に長いtsql文を含む文字列 'sSQL'があります。デバッグ中にその値が何であるかを確認する必要があります。私は通常、即時のウィンドウで?sSQLを使用しますが、これは前半を切り捨てて、私に最後の半分を与えるだけです。VB6 IDEで長い文字列の完全な値を確認

vb6 sp5開発環境を使用して完全な値を確認する方法はありますか?

答えて

4

の場合は、テキストファイルに保存してください。デバッグ方法があります。

sub SaveStringToDebugFile(s as string) 
    ... 
end sub 

をして、すぐに窓からそれを呼び出す:

SaveStringToDebugFile sSQL 
+0

私はこのおかげでやってしまっています。迷惑なvb6の制限。 – Richy321

5

一つの方法は、ファイルに出力する文字列を書き込む使用することです。あなたはラインの継続、例えばを使用することによって直ちにウィンドウ内の1行でこれを行うことができます。

Open "C:\SQL.TXT" For Append As #1: Write #1,sSQL : Close #1 

注:あなたは依存に書き込むことができますパスに\ SQL.Txt:あなたは、Cを変更する必要がありますあなたのOS

0

即時を使用して「長い」文字列の長さを確認します。その後、

?len(sSQL) 
4221 

あなたはMid関数を使用して文字列のチャンクを取得を開始することができますサイズを知る:

?Mid(sSQL, 1, 500) 

?Mid(sSQL, 500, 1000) 

?Mid(sSQL, 1000, 1500) 
+0

良い考えですが、これは14288文字ですが、ちょっと面倒かもしれません。 – Richy321

2

のErm、即時ウィンドウは切り捨てられません(1023文字の200行を除く)。ホームキーを押したり、左にスクロールしてみましたか?

+3

200KBのSQL文があれば、より大きな問題を抱えています...: – Deanna

+0

これは200行以上であるため、切り捨てられます...私はストアドプロシージャを動かしています。 200kは、各行が当然のことではない文字でいっぱいであると仮定します。 – Richy321

+0

文字列に新しい行を入れないでください:)(または '?replace(ssql、vbcrlf、" ")) – Deanna

14

デバッグの場合は、Clipboard.Clear: Clipboard.SetText ssqlをメモ帳に貼り付けます。

+1

もおかげさまで有益です。 – Richy321

+0

素晴らしい、本当に役に立ちました、ありがとう – Fedaykin

5

実行はあなたが即時のウィンドウに入力することができブレークポイントで一時停止している間:

Debug.Print(sSql) 

;-)

+1

OPは彼らがすでにやっていたことはまさにです。 – Deanna

+0

これは長い文字列では機能しません – WSK

関連する問題