เกิดข้อผิดพลาด:หายไปจาก-เงื่อนไขว่ารายการสำหรับโต๊ะ"ผู้ใช้"

0

คำถาม

ฉันใช้ postgresql และ pgadmin และผมใหม่กับเรื่องนี้ ฉันต้องเป็นโต๊ะ"ผู้ใช้"นั่นมีคนติดตามคอลัมน์ (Username, Name, Email, Phone, Discount, Password, token, serial, created_on, updated_on, points, reference). ฉันพยายามจะสร้างกระตุ้นสำหรับโต๊ะนั่น everytime ใหม่แทนเกิดขึ้นกับชื่อผู้ใช้ที่มีอยู่ในการอ้างอิงพื้นที่คะแนนของคนใช้ชื่อผู้ใช้จะเป็น incremented โดย 50. แล้วมันก็มีสองปฏิบัติการ-กำลังปรับปรุงที่อยู่โต๊ะฤติกรรมโรคจิต--การแทรใหม่ของค่า.

ฉันพยายามสร้างปุ่มฟังก์ชันแบบนี้:

create or replace function points()
returns trigger as 
$BODY$
BEGIN
        if 
        new."Users"."reference" in (old."Users"."username")
        then
        Insert into "Users"(Username,Name,Email,Phone,Discount,Password,token,serial,created_on,updated_on,points,reference)
         values(new.Username,new.Name,new.Email,new.Phone,new.Discount,new.Password,new.token,new.serial,new.created_on,new.updated_on,new.points,new.reference);
        
        
         update "Users"
         set old."Users"."points" = old."Users"."points" + 50
         where "Users"."username" = (select "Users"."username" from "Users" where new."Users"."reference" in (old."Users"."username"));
                                     
                                     
         end if;
    RETURN new;
END;
$BODY$
language plpgsql;

และเป็นตัวกระตุ้นอย่างนี้:

create trigger referece_points
after insert 
on "Users"
for each row
execute procedure points();

แต่ตอนที่ฉันพยายามที่จะแทนค่าใหม่ใน"ผู้ใช้"โต๊ะฉันไปตามข้อผิดพลาดคือ:

ERROR: missing FROM-clause entry for table "Users" LINE 1: SELECT new."Users"."reference" in (old."Users"."username") ^ Query: SELECT new."Users"."reference" in (old."Users"."username") CONTEXT: PL/pgSQL function points() line 2 at IF
plpgsql postgresql triggers
2021-11-23 21:47:46
1

คำตอบที่ดีที่สุด

0

คนใหม่เป็นองดูองค์ประกอบตัวแปรประเภทนั่นมันเกี่ยวข้องกับโต๊ะร่วมกับตัวกระตุ้นแล้วเมื่อปีก่อน

รหัส new."Users"."reference" ไม่มีเหตุผลเอาเสียเลย คุณควรจะต้องเขียนแค่ new."reference".

2021-11-24 16:27:42

ในภาษาอื่นๆ

หน้านี้อยู่ในภาษาอื่นๆ

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

ดังอยู่ในนี้หมวดหมู่

ดังคำถามอยู่ในนี้หมวดหมู่