에 고유 제약 조건 오류를 잡는 방법 : 이미 존재하는 이름을 가진 항목을 입력하려고하면 어떤 일이 일어날 것이라고어떻게 고유 한 contraint있는 테이블을 작성하는 경우, 예를 들어, POSTGRESQL
CREATE TABLE distributors (
did integer,
name varchar(40) UNIQUE
);
. 나는 그렇게하려고 시도했다. 그리고 그것은 단지 어떤 에러 메시지도 표시하지 않고 종료했다. 새 항목이 실제로 삽입되었는지 여부를 확인하는 방법이 있습니까?
ERROR: duplicate key value violates unique constraint "distributors_name_key"
DETAIL: Key (name)=(aaa) already exists.
을 기록 삽입되지 않습니다 : 이미 존재하는 이름을 가진 레코드를 삽입하려고하면
데이터가 삽입되지 않습니다. db에서 오류가 어떻게 해석 되는가에 따라 액세스 할 수있는 사용자가 무엇입니까? libpq/odbc 등? –
libpq를 사용하고 있는데, 그게 무엇을 반환할까요? – error
PQExec의 결과를 PQresultStatus로 확인하십시오. http://www.postgresql.org/docs/8.0/static/libpq-exec.html –