2011-10-07 3 views
1

Oracle 데이터베이스 위에 PHP 응용 프로그램이 있습니다. 데이터베이스에는 정의 된 몇 가지 제한 사항이 있습니다. 그들이 침해 당하면 나는 보통 constraint violated 메시지를받습니다. 사용자에게 몇 가지 사용자 지정 메시지를 표시하고 싶습니다.oracle에서 예외 메시지를 변경하는 방법이 있습니까?

제약 조건의 정의에 사용자 지정 오류 메시지를 정의하는 방법이 있습니까? 아니면이 문제에 대해 어떻게 생각해 보시겠습니까?

감사합니다.

+1

일부 코드를 표시 할 수 있습니까? –

+0

나는 싫어. 질문은 일반적인 채로 남아 있어야합니다. 비록 내가 예를들 수 있지만. 내 Student 테이블에 새 항목을 삽입하려고한다고 가정 해 봅시다. 몇 가지 열에 대해서는 이름이 null이 아니거나 성이 null이 아니거나 연령이 양수 여야한다는 등의 제약 조건이 정의되어 있습니다. 새 학생을 삽입하면 제약 조건 중 하나가 위반 될 수 있으며 사용자에게 친숙하지 않은 오류 메시지가 표시됩니다. 이것이 내가 위반 될 때 받게 될 각 제약 안에 오류 메시지를 정의하고자하는 이유입니다. 그가 그것을 이해할 수 있도록 사용자에게 보여줄 수 있어야합니다. – Tchypp

+2

http://stackoverflow.com/questions/6068792/is-there-way-to-give-user-friendly-error-message-on-constraint-violation을 참조하십시오. –

답변

0

자신에게 물어?

제약 조건은 데이터 유효성 검사를위한 최전선이 아닌 최후의 수단으로 만 존재하기 때문에 이러한 상황을 방지하기 위해 입력에 대해 강력한 유효성 검증을 구현해야합니다.

유효하지 않은 데이터 만 트랩하고보고하여 유용한 메시지로보고하여 데이터베이스에 삽입 할 유효성 검증 루틴을 작성하십시오.

이 PL/SQL 저장 프로 시저/패키지/기능, CRUD 작업을 위해 그들을 사용하는 방법에 대한 좋은 기사를 사용하여 수행 할 수

가 여기에 있습니다 : http://www.devshed.com/c/a/Oracle/Developing-Simple-PL-SQL-Stored-Procedures-for-CRUD-Operations/

또는 잠재적으로하지만, 데이터베이스가이 목적을 위해 트리거를 사용할 수 있습니다 " BEFORE "작업 트리거는 PL/SQL 유효성 검사 패키지에서 대량 처리 콜렉션 데이터만큼 효율적이지 않습니다.

희망 ...

관련 문제