プロが教える店舗&オフィスのセキュリティ対策術

VB6 で String型変数に勝手に250文字数制限がかかってしまいます。
解除する方法等ありましたら、ご教授下さい。

変数にはSQL分をいれています。300文字以上のSQL文を挿入するコーディングをしているのですが250文字で切れていまい、実行エラーになります。
変数に対してはとくに制限はかけていません。

環境:VB6 (SP6) 
Windows7

****** コーディング例 ******
Dim SQL As String

SQL = SQL & vbLf & "SELECT * "
SQL = SQL & vbLf & " FROM TB "
SQL = SQL & vbLf & " WHERE ID = 123"
SQL = SQL & vbLf & " AND TOKCD = '5478'"
SQL = SQL & vbLf & " AND KENSYOKBN = '1'"
SQL = SQL & vbLf & " AND SRINM = '1'"
SQL = SQL & vbLf & " AND KOBAN = '12345'"
SQL = SQL & vbLf & " AND KOSYUCD = '1'"
SQL = SQL & vbLf & " AND SIZECD = '13'"
SQL = SQL & vbLf & " AND LONGCD = '600'"
SQL = SQL & vbLf & " AND GHONSU = '360'"
SQL = SQL & vbLf & " AND KAINM1 = 'あいうえおかきくけこ'"
SQL = SQL & vbLf & " AND GENNM1 = 'たちつてとなにぬねの'"

A 回答 (1件)

stringは32767文字まで格納できるはず。


なんか、他に理由があるのではないでしょうか。

私の環境では、
Private Sub Command1_Click()
Dim SQL As String
SQL = SQL & vbLf & "SELECT * "
SQL = SQL & vbLf & " FROM TB "
SQL = SQL & vbLf & " WHERE ID = 123"
SQL = SQL & vbLf & " AND TOKCD = '5478'"
SQL = SQL & vbLf & " AND KENSYOKBN = '1'"
SQL = SQL & vbLf & " AND SRINM = '1'"
SQL = SQL & vbLf & " AND KOBAN = '12345'"
SQL = SQL & vbLf & " AND KOSYUCD = '1'"
SQL = SQL & vbLf & " AND SIZECD = '13'"
SQL = SQL & vbLf & " AND LONGCD = '600'"
SQL = SQL & vbLf & " AND GHONSU = '360'"
SQL = SQL & vbLf & " AND KAINM1 = 'あいうえおかきくけこ'"
SQL = SQL & vbLf & " AND GENNM1 = 'たちつてとなにぬねの'"
SQL = SQL & vbLf & " AND GENNM2 = 'はひふへほまみむめも'"
Debug.Print SQL, Len(SQL)
End Sub

とすると、
SELECT *
FROM TB
WHERE ID = 123
AND TOKCD = '5478'
AND KENSYOKBN = '1'
AND SRINM = '1'
AND KOBAN = '12345'
AND KOSYUCD = '1'
AND SIZECD = '13'
AND LONGCD = '600'
AND GHONSU = '360'
AND KAINM1 = 'あいうえおかきくけこ'
AND GENNM1 = 'たちつてとなにぬねの'
AND GENNM2 = 'はひふへほまみむめも' 274
とでますよ。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A