2016-08-16 2 views
0

업데이트 쿼리를 실행하려고했지만 "조건 식에 데이터 형식이 일치하지 않습니다."라는 메시지가 나타납니다. 전에는 잘 돌아가고 있었지만 지금은 갑자기이 오류가 발생했습니다. 나는 연구를하고 또한 스택 오버 플로우를 체크했지만 솔루션을 찾을 수 없었다. 내 쿼리에는 하나의 조건 식만 있습니다.ms 액세스 2007의 조건 식에서 데이터 형식 불일치 오류가 발생했습니다.

UPDATE dbo_tblGoods INNER JOIN qryValidate 
    ON dbo_tblGoods.MaterialID = qryValidate.MaterialID 
SET dbo_tblGoods.BarcodeType = [qryValidate]![BarCodeType], 
    dbo_tblGoods.BarCode = [qryValidate]![BarCode] 
WHERE (((Right$([NewBarCode],4))="GOOD")); 

또한, qryValidate은 다음과 같습니다

나는 오류 "Data type mismatch을 가지고 때마다
SELECT Parts.MaterialID, Validate_UPC([Parts]![Barcode],[Parts]![BarcodeType]) AS NewBarCode, 
Parts.BarCodeType, Parts.BarCode 
FROM dbo_tblgoods INNER JOIN Parts 
    ON dbo_tblgoods.MaterialID = Parts.MaterialID; 

답변

0

, 난 항상 "=> ..."또는 Function 내가 표현으로이 해당 필드를 확인합니다. 대부분 오류의 원인은 Null입니다.

Validate_UPC([Parts]![Barcode],[Parts]![BarcodeType])의 기능을 확인하고 Null 필드의 경우 Validate_UPC(nz([Parts]![Barcode]),nz([Parts]![BarcodeType]))으로 변경하십시오.

작동하지 않는 경우 Validate_UPC의 매개 변수가 검색어에 입력 한 데이터 유형과 일치하는지 확인하십시오. 예 : Barcode을 Integer로 선언하면 문자열 필드가 유효하지 않습니다. Barcode 또는 BarcodeTypeVariant으로 선언하고 VBA에서 올바르게 처리하도록하십시오.

마지막으로 동일한 데이터 필드 유형이 아닌 두 개 이상의 테이블에서 내부 조인 필드를 사용하려고합니다. 데이터 가져 오기에서 새 임시 테이블을 만들 때 종종 실수를합니다. (예 : Excel 가져 오기)

0

15k 데이터로 Excel 시트가 있고 비어있는 셀 2 개가 있음을 깨달았습니다. 그러므로, 그것은 나에게이 오류를주고 있었다. 나를 도와 주신 모든 분들께 감사드립니다.

관련 문제