41 lines
1.9 KiB
SQL
41 lines
1.9 KiB
SQL
-- ==========================================================
|
|
-- DMS v1.0.1 Patch
|
|
-- Reason: Add missing relationship for Req 2.5.3
|
|
-- Update: Changed link to revision-level instead of master-level based on clarification.
|
|
-- ==========================================================
|
|
|
|
SET NAMES utf8mb4;
|
|
SET time_zone = '+07:00';
|
|
SET FOREIGN_KEY_CHECKS=1;
|
|
|
|
-- สร้างตารางเชื่อมระหว่าง shop_drawing_revisions (ตารางลูก) กับ contract_drawings (Master)
|
|
-- เพื่อรองรับ Requirement 2.5.3 ที่ระบุว่า Shop Drawing "แต่ละ revision" สามารถอ้างอิง Contract Drawing ที่แตกต่างกันได้
|
|
CREATE TABLE shop_drawing_revision_contract_refs (
|
|
shop_drawing_revision_id INT NOT NULL COMMENT 'ID ของ Shop Drawing Revision (FK -> shop_drawing_revisions.id)',
|
|
contract_drawing_id INT NOT NULL COMMENT 'ID ของ Contract Drawing ที่อ้างอิง (FK -> contract_drawings.condwg_id)',
|
|
|
|
-- PRIMARY KEY (shop_drawing_revision_id, contract_drawing_id),
|
|
|
|
-- เพิ่ม KEY เพื่อประสิทธิภาพในการค้นหา
|
|
KEY idx_sdrcr_rev (shop_drawing_revision_id),
|
|
KEY idx_sdrcr_cd (contract_drawing_id),
|
|
|
|
-- Foreign Keys
|
|
CONSTRAINT fk_sdrcr_revision
|
|
FOREIGN KEY (shop_drawing_revision_id)
|
|
REFERENCES shop_drawing_revisions(id) -- เชื่อมโยงกับตาราง Revision
|
|
ON DELETE CASCADE
|
|
ON UPDATE CASCADE,
|
|
|
|
CONSTRAINT fk_sdrcr_contract_drawing
|
|
FOREIGN KEY (contract_drawing_id)
|
|
REFERENCES contract_drawings(condwg_id)
|
|
ON DELETE CASCADE
|
|
ON UPDATE CASCADE
|
|
)
|
|
ENGINE=InnoDB
|
|
DEFAULT CHARSET=utf8mb4
|
|
COLLATE=utf8mb4_general_ci
|
|
COMMENT='ตารางเชื่อมโยง Shop Drawing Revisions กับ Contract Drawings (Req 2.5.3)';
|
|
|