2011-04-22 4 views
0
$conn=odbc_connect('mobshopDB','',''); 
    if(!$conn){ 
     exit("Connection Failed: " . $conn); 
    } 
    $query="INSERT INTO users(uid,pass,fname,lname,pmm) VALUES('$username','$password','$fname','$lname',$pmm)"; 
    $rs=odbc_exec($conn,$query); 

이 쿼리 나에게이 오류 해결책을 제안 ..please 데이터 형식이 일치하지 ODBC를 통해 Access를 사용

Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression., SQL state 22005 in SQLExecDirect in C:\Program Files\EasyPHP-5.3.6.0\www\mobshop\registered.php on line 39

을 제공

참고 : PMM는 숫자 필드, 그게 왜 내가 따옴표에 넣지 않았어.

+0

할 수 있도록 테이블 구조를 필요로 넣어야합니다 정수되지 않은 경우

다음이
$id = (int) $id;

같은 값의 타입 캐스팅을 이 질문에 정확하게 답하십시오. – afuzzyllama

답변

1

"데이터 형식 불일치"는 첫 번째 괄호 집합에 나열된 필드 중 하나에 대해 변수 중 하나에서 잘못된 데이터 형식을 전달하려고 시도했음을 나타냅니다.

에코를 사용하여 화면에 $ query를 작성한 다음 그 결과를 가져 와서 MS Access 데이터베이스 쿼리 디자이너에서 실행하십시오 (MS Access 소프트웨어가 있다고 가정). 대신이

$query="INSERT INTO users(uid,pass,fname,lname,pmm) VALUES('$username','$password','$fname','$lname',$pmm)"; 

0

$query="INSERT INTO users(uid,pass,fname,lname,pmm) VALUES('$username','$password','$fname','$lname','$pmm')"; 

당신은 단지 $의 PMM 필드에 따옴표를 잊어보십시오. ODBC를 사용하는 경우 데이터 유형에주의해야합니다. 값이 정수가 될 경우 데이터 유형은 다음 따옴표

관련 문제