2012-09-26 2 views
3

고유 한 열 contraint가있는 데이터베이스가 있습니다.이 구속 조건이없는 기존 데이터베이스의 행을 삽입합니다.Phalcon, pdo_mysql은 데이터 저장시 중복 항목을 처리 할 수 ​​없습니다.

문제를 일으키는 행을 식별하고 싶습니다. 개발 데이터 이후로는 아무런 문제가 없지만 시스템이 프로덕션 환경에있을 때 중복 항목 오류에 대한 일반적인 처리를 원합니다.

지금 당장 유용한 정보가없는 \ Phalcon \ Db \ Exception이 발생합니다 (예외 코드는 0이고 예외 메시지는/duplication 오류가 아닌 단지 쿼리 일뿐입니다). 이는 mysql을 감지 할 수 없음을 의미합니다. 1062 중복 오류 코드.

Phalcon_DUP_ERR 같은 예외 코드를 사용하여 \ Phalcon \ Db \ Exception을 잡을 수 있다면 1062 mysql 오류가 발생했음을 확인하기 위해 뭔가를 inode해야합니다. 그런 다음 수행 할 작업이 무엇인지 파악하지만 howto는 모른다.

내가 여기 뭔가 잘못하고있어, Phalcon 설명서를 검색해 보았지만, mysql 오류를 처리하는 것에 관한 어떤 것도 찾을 수 없습니까?

답변

2

0.5.0에서 예외의 오류 모드는 ERRMODE_SILENT입니다. 이 모드는 유용하지 않으며 일부 오류는 갑자기 침묵합니다 (심지어 경고). 0.5.1에서 오류 모드가 더 나은 정보를 제공하는 ERRMODE_EXCEPTION으로 변경되었습니다.

+0

언제든지 github 저장소의 0.5.1 분기로 전환하고 거기에서 코드를 컴파일 할 수 있습니다. 또는 약간 기다려서 0.5.1이 출시됩니다. –

관련 문제