2016-08-20 2 views
1

메모 필드 (adLongVarWChar)를 포함하여 ADO를 사용하여 연결이 끊긴 레코드 집합을 만들려고합니다. 어떤 이유인지 그것은 adVarWChar로 다시 변환됩니다. 내가 뭘 잘못하고 있니? 그것이 나오는 것에 따라연결이 끊긴 ADO 레코드 집합을 만드는 동안 오류가 발생했습니다.

Private Sub Form_Load() 
Dim rs As New Recordset 

    rs.Fields.Append "test", adLongVarWChar, 512, adFldIsNullable Or adFldLong Or adFldMayBeNull Or adFldMayDefer Or adFldUnknownUpdatable 
    Debug.Print rs.Fields(0).Type & " <- This should be 203 (adLongVarWChar) but it returns 202 (adVarWChar)" 

    Unload Me 
End Sub 
+0

시도'-1' 대신 512''의 크기. – wqw

+0

Nop, 같은 결과. – AndyDF

답변

1

, 어떤 이유로, 당신은 다음 데이터 형식이 제대로 반환, 첫 번째 레코드를 추가해야합니다

Private Sub Form_Load() 
Dim rs As New Recordset 

    rs.Fields.Append "test", adLongVarWChar, &H7FFFFFFF, adFldIsNullable Or adFldLong Or adFldMayBeNull Or adFldMayDefer Or adFldUnknownUpdatable 
    Debug.Print rs.Fields(0).Type & " <- This should be 203 (adLongVarWChar) but it returns 202 (adVarWChar)" 
    rs.Open 
    rs.AddNew 
    rs.Update 
    Debug.Print rs.Fields(0).Type & " <- This is now 203 (adLongVarWChar)" 

    Unload Me 
End Sub 
관련 문제