VB.Net에서 매개 변수화 된 sql 문을 ms 액세스 db (.accdb)로 실행하려고하면 data type mismatch in criteria expression
오류 메시지가 계속 나타납니다.조건 식의 데이터 형식이 일치하지 않습니다.
문제는 @PartNumber
입니다. 배열에서 값을 가져 오기 위해 직접 하드 코딩했기 때문에 문제가 발생했습니다. 나는 그것을 고치는 법을 모른다. 테이블
PartNumber
여기이고 문제가있는 코드 :
For i As Integer = 0 To trackParts.GetUpperBound(0) - 1
If (trackParts(i, 4) = "1") Then
cmd.CommandText = "INSERT INTO ServiceParts ([IncidentNumber], [PartNumber], [Quantity]) Values (@IncidentNumber, @PartNumber, @Quantity);"
cmd.Parameters.AddWithValue("@IncidentNumber", incidentNumberLabel.Text()
.ToString().ToUpper().Trim())
cmd.Parameters.AddWithValue("@PartNumber", trackParts(i, 0)
.ToString.ToUpper().Trim())
cmd.Parameters.AddWithValue("@Quantity", Convert.ToInt32(trackParts(i, 3)))
cmd.ExecuteNonQuery()
End If
Next
도움이 필요하시면 미리 알려 주시기 바랍니다. 필요한 정보가 더 있으면 알려 주시면 게시 해 드리겠습니다. 또한 시도 할 새로운 것을 생각하면서 시도한 새로운 것들로 이것을 업데이트 할 것입니다.
게시 테이블 정의. 테이블의 정의 된 열 유형 및 데이터와의 불일치 가능성이 있습니다. – RBarryYoung
올바른 유형의 임시 변수에'trackParts (I, 0)'를 할당하고'AddWithValue' 호출에서 임시 변수를 사용하십시오. –
테이블 정의를 게시하는 방법은 무엇입니까? 텍스트를 게시하기에는 너무 깁니다. 테이블의 PartNumber는 데이터 유형이 TEXT이고 ToString()을 String 데이터 유형이라고 가정합니다. 편집 : Pieter, 나는 이미 그것을 시도했다. 동일한 오류가 발생했습니다. – Josiah