0
我无法从PostGres DB的父表中删除记录..你们中的任何一个人都可以让我对此有所了解。级联删除不起作用
-- Table: tbl_patient
-- DROP TABLE tbl_patient;
CREATE TABLE tbl_patient
(
patient_id bigserial NOT NULL,
date_of_birth date NOT NULL,
fathers_name character varying(255) NOT NULL,
first_name character varying(255) NOT NULL,
last_name character varying(255),
marital_status character varying(255),
mobile_number character varying(255) NOT NULL,
occupation character varying(255),
phone_number character varying(255),
pregnancy_status character varying(255),
sex character varying(255) NOT NULL,
CONSTRAINT tbl_patient_pkey PRIMARY KEY (patient_id)
)
WITH (
OIDS=FALSE
);
ALTER TABLE tbl_patient
OWNER TO postgres;
-- Table: tbl_address
CREATE TABLE tbl_address
(
address_id bigserial NOT NULL,
address_line_1 character varying(255) NOT NULL,
address_line_2 character varying(255),
city character varying(255),
country character varying(255),
district character varying(255) NOT NULL,
pincode character varying(255) NOT NULL,
state character varying(255),
street character varying(255),
patient_id bigint,
CONSTRAINT tbl_address_pkey PRIMARY KEY (address_id),
CONSTRAINT fk_slc6pgeimmox5buka8bydy6c4 FOREIGN KEY (patient_id)
REFERENCES tbl_patient (patient_id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
)
WITH (
OIDS=FALSE
);
ALTER TABLE tbl_address
OWNER TO postgres;
// ----------------------------------------- --------------------------
当我把这个命令
DELETE FROM tbl_patient
WHERE patient_id = 1;
我下面
此错误ERROR: update or delete on table "tbl_patient" violates foreign key constraint "fk_slc6pgeimmox5buka8bydy6c4" on table "tbl_address" SQL state: 23503 Detail: Key (patient_id)=(1) is still referenced from table "tbl_address".
您的代码没有问题。它工作得很好。即使在'tbl_patient'表中添加了一行之后,它也会被删除。在其他地方寻找问题。如果可能的话,创建一个新的数据库并在那里尝试。你会看到它的作品。 – mehmet
你在哪里“放这个命令”?以及它与JPA API有什么关系? –