23 lines
1.0 KiB
Plaintext
23 lines
1.0 KiB
Plaintext
BEGIN;
|
|
|
|
-- 1. ย้ายตารางเก่าหลบไปก่อน (Backup ไว้ในตัว)
|
|
ALTER TABLE users RENAME TO users_old;
|
|
|
|
-- 2. สร้างตารางใหม่ (ด้วยโครงสร้างที่ต้องการแก้ไข)
|
|
CREATE TABLE users (
|
|
id SERIAL PRIMARY KEY,
|
|
username VARCHAR(50) NOT NULL,
|
|
-- ใส่ Column ใหม่ หรือแก้ไข Type ตรงนี้
|
|
new_column_data JSONB
|
|
);
|
|
|
|
-- 3. ย้ายข้อมูลจากตารางเก่ามาใส่ตารางใหม่
|
|
INSERT INTO users (id, username, new_column_data)
|
|
SELECT id, username, CAST(old_data AS JSONB) -- แปลงข้อมูลระหว่างทางได้เลย
|
|
FROM users_old;
|
|
|
|
-- 4. สร้าง Index และ Constraint ให้ครบ (สำคัญมาก!)
|
|
CREATE INDEX idx_users_username ON users(username);
|
|
-- อย่าลืม Add Foreign Key หรือ Grant Permission ให้ User อื่นด้วย
|
|
|
|
COMMIT; |