ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

ตอบกระทู้

รูปแสดงอารมณ์
:icon_plusone: :like: :plusone: :gfb: :-D :) :( :-o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: :angry: :baa: :biggrin:
รูปแสดงอารมณ์อื่นๆ

BBCode เปิด
[img] เปิด
[url] เปิด
[Smile icon] เปิด

กระทู้แนะนำ
   

มุมมองที่ขยายได้ กระทู้แนะนำ: ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

Re: ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

โดย mindphp » 29/11/2023 1:42 pm

ลองเขียนแบบเป็นการเชื่อมต่อเอง และรันคำสั่ง SQL เอง

Re: ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

โดย MBMoo » 29/11/2023 1:10 pm

ใน Programming มันมีส่วนแจ้งเตือน error ไม่ให้เปลี่ยนแปลงข้อมูลค่ะ เลยย้ายมาทำใน sql แทนค่ะ

Re: ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

โดย mindphp » 29/11/2023 1:08 pm

ใช้ Loop ดึงมาทำใน Programming จะเขียน และ debug ได้สะดวกกว่านะครับ ทำโปรแกรมดีกว่านะครับ ถ้าข้อมูลไม่ถึงระดับหลักล้านแถว

ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ

โดย MBMoo » 29/11/2023 1:04 pm

ต้องการ อัพเดทอีกตารางและนำข้อมูลทั้งก่อนอัพเดทและหลังอัพเดทไปเก็บอีกตารางทำได้แบบไหนบ้างคะ


มีการสร้างตารางเก็บประวัติมา

โค้ด: เลือกทั้งหมด

CREATE TABLE md_prefix_individual_history (
    model character varying(256),
    data_id character varying(256),
    field character varying(256),
    old_id character varying(256),
    new_id character varying(256),
);


ส่วนนี้เป็นการเปลี่ยนแปลงข้อมูล

โค้ด: เลือกทั้งหมด

UPDATE res_partner SET is_company=False, name=CONCAT(prefix.name, ' ' , partner.name), prefix_id=null
from res_partner as partner
inner join res_partner_prefix as prefix on (prefix.id=partner.prefix_id)
WHERE res_partner.prefix_id in (7,10) and res_partner.id = partner.id

ต้องการเอาการเปลี่ยนแปลงข้อมูลทั้งหมดทั้งเก่าและใหม่ไป insert ในตาราง md_prefix_individual_history มีวิธีไหนบ้างคะ

postgres sql

ข้างบน