From a336191153f076b6c1bad3abc7ab8cd155d1b7d5 Mon Sep 17 00:00:00 2001 From: chpark Date: Thu, 7 May 2026 15:59:24 +0900 Subject: [PATCH] =?UTF-8?q?fix(db=20011):=20momo=5Forder=5Fitems.item=5Fob?= =?UTF-8?q?jid=20NOT=20NULL=20=E2=86=92=20NULLABLE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 증상: 거래명세표에서 [+ 택배/용차 추가] 클릭 시 null value in column "item_objid" of relation "momo_order_items" violates not-null constraint 원인: 001_momo_init.sql 에서 item_objid 가 TEXT NOT NULL 로 정의됨. 택배/용차 라인(kind=DELIVERY/CHARTER)은 품목이 아니라 가상 부가 라인이라 NULL 이 정상. 해결: ALTER ... DROP NOT NULL. ITEM 라인은 어차피 코드 레벨에서 항상 값을 넣고 있어 무영향. Co-Authored-By: Claude Opus 4.7 (1M context) --- db/migrations/011_extra_lines_nullable.sql | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 db/migrations/011_extra_lines_nullable.sql diff --git a/db/migrations/011_extra_lines_nullable.sql b/db/migrations/011_extra_lines_nullable.sql new file mode 100644 index 0000000..2953727 --- /dev/null +++ b/db/migrations/011_extra_lines_nullable.sql @@ -0,0 +1,13 @@ +-- 011_extra_lines_nullable.sql +-- v0.5 (2026-05-07) +-- 택배(DELIVERY)/용차(CHARTER) 라인은 item_objid 가 없는 가상 라인이므로 +-- NOT NULL 제약을 풀어준다. + +BEGIN; + +ALTER TABLE momo_order_items ALTER COLUMN item_objid DROP NOT NULL; + +COMMENT ON COLUMN momo_order_items.item_objid + IS '품목 OBJID. ITEM 라인은 NOT NULL, DELIVERY/CHARTER 라인은 NULL.'; + +COMMIT;