2013-07-10 2 views
0

가이들 나는이 Access DB에 정말로 붙어 있습니다. 나는 회사를 위해 PHP 응용 프로그램을 만들었고, 웹 응용 프로그램에서 MS 액세스로 내보내는 기록은 나에게 두통을주고 있습니다.Windows Server x64 에디션에서 DB PDO가 작동하지 않습니다.

저는 Windows 2008 64 비트 버전 서버에 Xampp 1.8.1x32 및 MS office 2010 32bit professional을 설치했는데 모든 것이 잘 작동합니다! php.ini에서 extension = php_pdo_odbc.dll을 활성화하고 PHP PDO를 사용하여 mysql에서 accdb 파일로 데이터를 내보내려고했지만 데이터를 accdb 파일에 삽입하지 않았습니다.

"Access 데이터베이스 엔진 x64"및 "Access 데이터베이스 엔진 x32"를 설치하여 ODBC 64 비트 및 ODBC 32 비트 모두에서 accdb 파일에 시스템 DSN을 추가하려고 시도했지만 여전히 운이 좋지 않습니다. 동일한 mysql을 엑셀 데이터 익스포트에 사용하면 엑세스 데이터베이스 엔진을 설치하지 않고 DSN을 설정하지 않고도 win7 x64 및 ms office 2010 x32에서 정상적으로 작동합니다!

Win 2008x64 서버 에디션에서 PDO를 사용하여 accdb에 데이터를 삽입하는 다른 방법이 있는지 여부를 알려주십시오. 2008 년 특별 액세스 데이터베이스 에디션을 설치해야합니까, 아니면 작동하도록해야합니까?

길고 뒤틀린 게시물에 대해 사과드립니다. 인터넷상의 다른 곳에서는 해결책을 찾지 못했습니다. 친절하게 도와주세요!

업데이트 : PDO 또는 PHP 오류가 표시되지 않습니다. 그냥 작동하지 않습니다!

+0

로그를 확인 했습니까? 오류가 있습니까? 오류가 있습니까? 권한 문제? – andrewsi

+0

어떤 로그를 검사해야합니까? 아니요, PDO 또는 PHP 오류가 표시되지 않습니다. 그냥 작동하지 않습니다! accdb가 쓰기가 가능합니다 .. – Ganesh

+0

웹 서버 로그가 가장 좋은 곳이 될 것입니다. 그렇지 않으면, 디버깅을 시작하고, 새로운 코드를 작성하여 모든 단계에서'ErrorInfo()'를 덤프 할 수 있습니다. 코드가 서버에 연결되어 있습니까? 올바른 데이터베이스에 연결할 수 있습니까? 테이블에서 SELECT 할 수 있습니까? 업데이트 할 수 있습니까? 삽입 할 수 있습니까? 아마도 dev 환경과 라이브 환경 사이의 구성에 문제가있을 것입니다. – andrewsi

답변

0

같은 문제가 발생했습니다. 레코드를 읽고 표시 할 수 있었지만 INSERT는 효과가 없었으며 오류도 발생하지 않았습니다. 문제는, 이미 값이 채워진 SQL 문을 계속 실행하려고했습니다. 실제 매개 변수를 사용하여 준비 및 실행 문을 시도한 후에 작동했습니다. 왜 이런 식으로 동작하는지 모르겠지만 직접 INSERT 문을 실행할 수없는 것 같습니다.

Btw 이전에 데이터가 쿼리에 이미 채워 졌으므로 인수없이 '준비 - 실행'을 시도했습니다. 그것이 시행 착오의 단지 3 시간이 걸렸기 때문에 기쁘다! :

관련 문제