-- ===================================================== -- 地磅称重打印软件 - MySQL数据库建表脚本 -- 数据库名称: dibang -- 字符集: utf8mb4 -- ===================================================== -- 创建数据库(如果不存在) CREATE DATABASE IF NOT EXISTS dibang CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- 使用数据库 USE dibang; -- ===================================================== -- 1. 地磅单表 (weighing_slips) -- ===================================================== CREATE TABLE IF NOT EXISTS weighing_slips ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID', vehicle_no VARCHAR(255) NOT NULL COMMENT '车号', plan_no VARCHAR(255) COMMENT '计划单号', cargo_name VARCHAR(255) NOT NULL COMMENT '货物名称', business_type VARCHAR(255) NOT NULL COMMENT '业务类型', batch_no VARCHAR(255) COMMENT '批次号', supplier VARCHAR(255) NOT NULL COMMENT '供货单位', consignee VARCHAR(255) NOT NULL COMMENT '收货单位', gross_weight DOUBLE NOT NULL COMMENT '毛重', gross_weight_time VARCHAR(255) NOT NULL COMMENT '毛重时间', tare_weight DOUBLE NOT NULL COMMENT '皮重', tare_weight_time VARCHAR(255) NOT NULL COMMENT '皮重时间', deduction DOUBLE DEFAULT 0 COMMENT '扣杂', net_weight DOUBLE NOT NULL COMMENT '净重', planned_quantity DOUBLE COMMENT '计划数量', executed_quantity DOUBLE COMMENT '执行数量', weighing_point VARCHAR(255) DEFAULT '山峡地磅' COMMENT '称重点', remarks TEXT COMMENT '备注', is_voided INT DEFAULT 0 COMMENT '是否作废(0=否, 1=是)', created_at VARCHAR(255) NOT NULL COMMENT '创建时间', INDEX idx_vehicle_no (vehicle_no), INDEX idx_plan_no (plan_no), INDEX idx_cargo_name (cargo_name), INDEX idx_gross_weight_time (gross_weight_time), INDEX idx_is_voided (is_voided) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='地磅单表'; -- ===================================================== -- 2. 公司名称表 (companies) -- ===================================================== CREATE TABLE IF NOT EXISTS companies ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID', name VARCHAR(255) NOT NULL UNIQUE COMMENT '公司名称', created_at VARCHAR(255) NOT NULL COMMENT '创建时间', INDEX idx_name (name) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='公司名称表'; -- ===================================================== -- 3. 货物名称表 (cargos) -- ===================================================== CREATE TABLE IF NOT EXISTS cargos ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID', name VARCHAR(255) NOT NULL UNIQUE COMMENT '货物名称', created_at VARCHAR(255) NOT NULL COMMENT '创建时间', INDEX idx_name (name) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物名称表'; -- ===================================================== -- 4. 采购计划表 (purchase_plans) -- ===================================================== CREATE TABLE IF NOT EXISTS purchase_plans ( id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID', plan_date VARCHAR(255) NOT NULL COMMENT '计划日期', business_type VARCHAR(255) NOT NULL COMMENT '业务类型', product VARCHAR(255) NOT NULL COMMENT '产品名称', specification VARCHAR(255) COMMENT '规格', planned_quantity DOUBLE NOT NULL COMMENT '计划数量', vehicle_no VARCHAR(255) NOT NULL COMMENT '车牌号', customer_name VARCHAR(255) COMMENT '客户名称', remarks TEXT COMMENT '备注', created_at VARCHAR(255) NOT NULL COMMENT '创建时间', INDEX idx_plan_date (plan_date), INDEX idx_business_type (business_type), INDEX idx_vehicle_no (vehicle_no), INDEX idx_product (product) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购计划表'; -- ===================================================== -- 脚本执行完成 -- ===================================================== -- 说明: -- 1. 所有表使用 InnoDB 存储引擎,支持事务 -- 2. 字符集使用 utf8mb4,支持完整的UTF-8字符(包括emoji) -- 3. 已添加常用字段的索引,提升查询性能 -- 4. 所有字段都添加了中文注释,便于维护 -- =====================================================