본문 바로가기

SQL

배송 추적 테이블 생성: 배송 추적 정보를 저장하기 위한 테이블을 생성합니다.

반응형

배송 추적 정보를 저장하는 테이블은 고객이 주문한 상품의 위치와 상태를 실시간으로 추적하고 업데이트하는 데 중요합니다. 이 테이블은 추적 ID, 주문 ID, 배송 상태, 위치, 예상 도착 시간, 최근 업데이트 시간 등의 정보를 포함할 수 있습니다. 다음은 배송 추적 정보를 저장하기 위한 테이블 생성을 위한 SQL 쿼리문 예제와 각각의 설명입니다.


1. 기본 배송 추적 테이블 생성
CREATE TABLE shipment_tracking (
    tracking_id INT AUTO_INCREMENT PRIMARY KEY,
    order_id INT,
    current_status VARCHAR(100),
    current_location TEXT,
    estimated_delivery DATE,
    last_updated TIMESTAMP,
    FOREIGN KEY (order_id) REFERENCES orders(order_id)
);
설명: 각 배송의 현재 상태, 현재 위치, 예상 도착일, 마지막 업데이트 시간 등을 저장합니다.

 

2. 배송 상태 변경 기록 테이블 생성
CREATE TABLE shipment_status_history (
    history_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    status VARCHAR(100),
    location TEXT,
    update_time TIMESTAMP,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송 상태의 변경 이력을 저장합니다. 상태, 위치, 변경 시간을 포함합니다.

 

3. 배송 상세 정보 테이블 생성
CREATE TABLE shipment_details (
    detail_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    package_type VARCHAR(50),
    weight DECIMAL(5, 2),
    dimensions TEXT,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송되는 상품의 상세 정보를 저장합니다. 패키지 유형, 무게, 치수를 포함합니다.

 

4. 배송 업체 정보 테이블 생성
CREATE TABLE shipping_carriers (
    carrier_id INT AUTO_INCREMENT PRIMARY KEY,
    carrier_name VARCHAR(100),
    contact_info TEXT
);
설명: 배송을 담당하는 업체의 이름과 연락처 정보를 저장합니다.

 

5. 배송 예외 사항 테이블 생성
CREATE TABLE shipment_exceptions (
    exception_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    exception_date DATE,
    exception_detail TEXT,
    resolution TEXT,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송 중 발생한 예외 사항과 해결책을 저장합니다.

 

6. 배송 추적 알림 테이블 생성
CREATE TABLE shipment_notifications (
    notification_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    notification_type VARCHAR(50),
    message TEXT,
    sent_date TIMESTAMP,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송 추적과 관련된 알림 발송 내역을 저장합니다.

 

7. 배송 문서 테이블 생성
CREATE TABLE shipment_documents (
    document_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    document_type VARCHAR(50),
    document_url TEXT,
    issue_date DATE,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송과 관련된 문서(예: 선적서, 인수증)의 유형, URL, 발행일을 저장합니다.

 

8. 배송 경로 테이블 생성
CREATE TABLE shipment_routes (
    route_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    origin TEXT,
    destination TEXT,
    route_details TEXT,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송의 출발지, 목적지, 경로 상세를 저장합니다.

 

9. 배송 비용 테이블 생성
CREATE TABLE shipment_costs (
    cost_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    cost_type VARCHAR(50),
    amount DECIMAL(10, 2),
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송 관련 비용의 유형과 금액을 저장합니다.

 

10. 배송 시간 테이블 생성
CREATE TABLE shipment_times (
    time_id INT AUTO_INCREMENT PRIMARY KEY,
    tracking_id INT,
    departure_time TIMESTAMP,
    arrival_time TIMESTAMP,
    FOREIGN KEY (tracking_id) REFERENCES shipment_tracking(tracking_id)
);
설명: 배송의 출발 시간과 도착 시간을 기록합니다.

관련 전문용어 설명
CREATE TABLE: 새로운 테이블을 생성하는 SQL 명령어입니다.
INT, VARCHAR, DATE, TIMESTAMP, DECIMAL, TEXT: 데이터 유형을 나타냅니다.
AUTO_INCREMENT: 자동으로 숫자를 증가시키는 속성입니다.
PRIMARY KEY: 각 행을 고유하게 식별하는 주 키입니다.
FOREIGN KEY: 다른 테이블의 주 키를 참조하는 외래 키입니다.

반응형