From 0bc756dd2eb5e4809ff204c205ec06de498a53a8 Mon Sep 17 00:00:00 2001 From: shinnk Date: 2026年4月11日 03:22:20 +0900 Subject: [PATCH] fix: Fix partition constraint errors in PostgreSQL and MySQL schemas --- src/exporters/mysql_exporter.py | 3 ++- src/exporters/postgresql_exporter.py | 5 +++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/exporters/mysql_exporter.py b/src/exporters/mysql_exporter.py index da8ad25..231c783 100644 --- a/src/exporters/mysql_exporter.py +++ b/src/exporters/mysql_exporter.py @@ -171,7 +171,7 @@ -- ============================================= CREATE TABLE orders ( id INT NOT NULL AUTO_INCREMENT, - order_number VARCHAR(30) NOT NULL UNIQUE, + order_number VARCHAR(30) NOT NULL, customer_id INT NOT NULL, address_id INT NOT NULL, staff_id INT NULL, @@ -188,6 +188,7 @@ created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY (id, ordered_at), + UNIQUE KEY uq_order_number (order_number, ordered_at), INDEX idx_orders_customer (customer_id), INDEX idx_orders_status (status), INDEX idx_orders_ordered_at (ordered_at) diff --git a/src/exporters/postgresql_exporter.py b/src/exporters/postgresql_exporter.py index 436f770..2e881a7 100644 --- a/src/exporters/postgresql_exporter.py +++ b/src/exporters/postgresql_exporter.py @@ -231,7 +231,7 @@ -- ============================================= CREATE TABLE orders ( id INT GENERATED ALWAYS AS IDENTITY, - order_number VARCHAR(30) NOT NULL UNIQUE, + order_number VARCHAR(30) NOT NULL, customer_id INT NOT NULL, address_id INT NOT NULL, staff_id INT NULL, @@ -247,7 +247,8 @@ cancelled_at TIMESTAMP NULL, created_at TIMESTAMP NOT NULL, updated_at TIMESTAMP NOT NULL, - PRIMARY KEY (id, ordered_at) + PRIMARY KEY (id, ordered_at), + UNIQUE (order_number, ordered_at) ) PARTITION BY RANGE (ordered_at); CREATE TABLE orders_2015 PARTITION OF orders

AltStyle によって変換されたページ (->オリジナル) /