2016-08-23 6 views
-2

이 오류 : 메시지 : oci_execute() : ORA-00001 : 좀 더 간단하게 오류를 처리하지 않는 방법 할 경우 (SCHEMA_NAME.NAME 제약 조건)CodeIgniter는 ORA-00001 : 고유 제한 조건

을 위반 고유 제한 조건은 내가 궁금해 더 일반적인.

그렇지 않은 경우 모델의 각 기능을 추가하기 전에 데이터를 확인하고 중복이 없으며 위에서 언급 한 오류를주지 않아야하기 때문입니다.

누구든지이 문제를 해결할 수있는 간단한 방법을 알고 있습니까?

감사합니다.

+1

테이블 정의를 표시하지 않거나 제약 조건을 표시하지 않지만 제약 조건이있는 중복 값이있는 행을 삽입하려고하면 응용 프로그램에 문제가있을 수 있습니다. – OldProgrammer

답변

0

중복 된 데이터를 삽입하지 않고 명령문이 성공할 수 있도록 지정할 수있는 힌트가 있습니다. 작업이 동일한 데이터를 여러 번 삽입하려고 시도하는 복제 또는 대량 데이터로드에 유용 할 수 있습니다. 사용자 응용 프로그램의 일부로 권장하지 않습니다.

"는 IGNORE_ROW_ON_DUPKEY_INDEX 힌트는 단일 테이블 INSERT 작업에만 적용됩니다. 그것은 UPDATE 지원되지 않습니다, DELETE, MERGE 또는 다중 테이블 삽입 작업. IGNORE_ROW_ON_DUPKEY_INDEX 컬럼의 지정된 세트에 대한 고유 키 위반을 무시하도록 문을 유발하거나 고유 한 키 위반이 발생하면 행 수준의 롤백이 발생하고 다음 입력 행에서 실행이 다시 시작됩니다. "

+0

죄송합니다. 설명해 드리겠습니다. 경우에 따라 데이터베이스에서 중복 데이터를 삽입 할 수 없습니다. 삽입물을 만들 때 처리 할 수 ​​있다는 것을 알고, 해당 레코드가 이미 등록되지 않았는지 확인하십시오. 문제는이 시스템이 준비되어 있고 변경해야 할 많은 화면이 있다는 것입니다. 내가 원했던 것은 동일한 오류 메시지를 반환하고 사용자에게 메시지를 알리기 위해이 오류를 처리 할 방법이 없는지를 아는 것이 었습니다. 그래서 저는 다양한 모델에서 여러 가지 방법을 바꾸지 않을 것입니다. 대단히 감사합니다. –