、私は2つのテーブル持っているので、ここでの事です:(シングルP付き)apointmentsとmedical_folderを、私は私がチェックしている。このレコードの「新しい」なしフィールド「硬化」PostgreSQLの持っていない
ERROR: record "new" has no field "cure" CONTEXT: SQL statement "insert into medical_folder(id,"patient_AMKA",cure,drug_id) values(new.id,new."patient_AMKA",new.cure,new.drug_id)" PL/pgSQL function new_medical() line 3 at SQL statement
create trigger example_trigger after insert on apointments
for each row execute procedure new_medical();
create or replace function new_medical()
returns trigger as $$
begin
if apointments.diagnosis is not null then
insert into medical_folder(id,"patient_AMKA",cure,drug_id)
values(new.id,new."patient_AMKA",new.cure,new.drug_id);
return new;
end if;
end;
$$ language plpgsql;
insert into apointments(id,time,"patient_AMKA","doctor_AMKA",diagnosis)
values('30000','2017-05-24 0
07:42:15','4017954515276','6304745877947815701','M3504');
を取得複数回、私のテーブルと列はすべて存在します お手数です!ありがとうございます!
表の構造は以下のとおりです。
create table medical_folder (
id bigInt,
patient bigInt,
cure text,
drug_id bigInt);
create table apointments (
id bigint,
time timestamp without time zone,
"patient_AMKA" bigInt,
"doctor_AMKA" bigInt);
私はpgAdmin 4を使っています! –
メッセージには、medical_folderには "cure"という列がありません。スキーマを再度確認してください。あなたのスキーマがなければ、それ以上にあなたを助けることはできません。 – Stephan
申し訳ありませんが、私はそれを言及するのを忘れてしまった: テーブルmedical_folderがある: ID(BIGINT) 患者(BIGINT) 硬化(テキスト) drug_id(BIGINT) とテーブルapointmentsは次のとおりです。 ID(BIGINT) 時間(タイムスタンプ"doctor_AMKA"(bigInt) "patient_AMKA"(bigInt) "doctor_AMKA"(bigInt) 私は自分のスキーマをチェックし、 "治癒"の列は存在します! –