-- ⚠️ PostgreSQL ไม่รองรับคำสั่ง AFTER ในการเพิ่ม Column -- จำเป็นต้องสร้างตารางใหม่เพื่อจัดเรียงลำดับ Column BEGIN; -- เริ่ม Transaction (ถ้า Error ข้อมูลจะไม่เสียหาย) -- 1. เปลี่ยนชื่อตารางเดิมเป็น Backup ALTER TABLE dbo.prjmst RENAME TO prjmst_backup; -- 2. สร้างตารางใหม่โดยมี prjdoc อยู่ในตำแหน่งที่ต้องการ CREATE TABLE dbo.prjmst ( prjseq integer NOT NULL, prjnam character varying(150) COLLATE pg_catalog."default" NOT NULL, prjusrseq integer, prjwntbdg numeric(14,2), prjacpbdg numeric(14,2), prjbdgcod character varying(3) COLLATE pg_catalog."default", prjcomstt character varying(3) COLLATE pg_catalog."default", -- ✅ แทรก Column ใหม่ตรงนี้ prjdoc character varying(255) COLLATE pg_catalog."default", prjacpdtm character(12) COLLATE pg_catalog."default", CONSTRAINT prjmst_pkey PRIMARY KEY (prjseq, prjnam) ) TABLESPACE pg_default; -- 3. กำหนด Owner (ถ้าจำเป็น) ALTER TABLE dbo.prjmst OWNER to postgres; -- 4. ย้ายข้อมูลจากตาราง Backup มาใส่ตารางใหม่ (Map ข้อมูลให้ตรง Column) INSERT INTO dbo.prjmst ( prjseq, prjnam, prjusrseq, prjwntbdg, prjacpbdg, prjbdgcod, prjcomstt, prjacpdtm -- prjdoc จะเป็น NULL อัตโนมัติสำหรับข้อมูลเก่า ) SELECT prjseq, prjnam, prjusrseq, prjwntbdg, prjacpbdg, prjbdgcod, prjcomstt, prjacpdtm FROM prjmst_backup; -- 5. ยืนยันการทำงาน COMMIT; -- หมายเหตุ: หลังจากตรวจสอบข้อมูลแล้ว สามารถลบตาราง Backup ได้ด้วยคำสั่ง: -- DROP TABLE dbo.prjmst_backup;