2011-08-12 11 views
6

Tôi có chuỗi 'sSQL' chứa câu lệnh tsql rất dài. Tôi cần phải kiểm tra xem giá trị của nó là gì trong khi gỡ lỗi. Tôi thường chỉ sử dụng? SSQL trong cửa sổ ngay lập tức nhưng điều này là cắt ngắn nửa đầu và chỉ cho tôi nửa cuối.Kiểm tra giá trị đầy đủ của một chuỗi dài trong VB6 IDE

Vì vậy, có cách nào khác để xem giá trị đầy đủ bằng cách sử dụng môi trường dev v56 sp5 không?

Trả lời

4

Nếu đó là dài, hãy lưu tệp đó vào tệp văn bản. Có một phương pháp gỡ lỗi:

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

và sau đó gọi nó từ cửa sổ ngay lập tức:

SaveStringToDebugFile sSQL 
+0

tôi đã kết thúc chỉ cần làm điều này nhờ. Giới hạn vb6 gây phiền nhiễu. – Richy321

5

Một cách là sử dụng viết chuỗi ra một tập tin. Bạn có thể làm điều này trong một dòng duy nhất trong cửa sổ ngay lập tức bằng cách sử dụng continuations Line, ví dụ:

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

Lưu ý: Bạn sẽ cần phải thay đổi C: \ SQL.Txt đến một con đường mà bạn có thể viết thư cho tùy thuộc vào hệ điều hành của bạn.

0

Kiểm tra độ dài của chuỗi "dài" sử dụng trước mắt:

?len(sSQL) 
4221 

sau đó biết kích thước mà bạn có thể bắt đầu nhận được những phần của chuỗi bằng giữa chức năng:

?Mid(sSQL, 1, 500) 

?Mid(sSQL, 500, 1000) 

?Mid(sSQL, 1000, 1500) 
+0

ý tưởng hay nhưng cái này là 14288 ký tự, có thể hơi cồng kềnh. – Richy321

2

Erm, trước mắt cửa sổ không cắt ngắn (ngoại trừ 200 dòng gồm 1023 ký tự). Bạn vừa thử nhấn phím chủ hoặc di chuyển sang trái?

+3

và nếu bạn có một câu lệnh SQL 200KB, bạn có vấn đề lớn hơn FAR ...: p – Deanna

+0

Nó là hơn 200 dòng và do đó cắt ngắn ... Tôi đang đối phó với các thủ tục di chuyển được lưu trữ. 200k giả định rằng mỗi dòng có đầy đủ các ký tự mà tất nhiên là không thể. – Richy321

+0

Không đặt các dòng mới trong chuỗi :) (hoặc '? Thay thế (ssql, vbcrlf," ")') – Deanna

14

Để gỡ lỗi, Clipboard.Clear: Clipboard.SetText ssql sau đó dán vào notepad.

+1

cũng hữu ích nhờ. – Richy321

+0

tuyệt vời, thực sự hữu ích, cảm ơn – Fedaykin

5

Trong khi thực hiện bị tạm dừng trên breakpoint bạn có thể gõ trong cửa sổ ngay lập tức:

Debug.Print(sSql) 

;-)

+1

Đó là chính xác những gì OP cho biết họ đã làm. – Deanna

+0

Điều này không hoạt động cho chuỗi dài – WSK