mysql_create_tables.sql 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. -- =====================================================
  2. -- 地磅称重打印软件 - MySQL数据库建表脚本
  3. -- 数据库名称: dibang
  4. -- 字符集: utf8mb4
  5. -- =====================================================
  6. -- 创建数据库(如果不存在)
  7. CREATE DATABASE IF NOT EXISTS dibang CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
  8. -- 使用数据库
  9. USE dibang;
  10. -- =====================================================
  11. -- 1. 地磅单表 (weighing_slips)
  12. -- =====================================================
  13. CREATE TABLE IF NOT EXISTS weighing_slips (
  14. id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  15. vehicle_no VARCHAR(255) NOT NULL COMMENT '车号',
  16. plan_no VARCHAR(255) COMMENT '计划单号',
  17. cargo_name VARCHAR(255) NOT NULL COMMENT '货物名称',
  18. business_type VARCHAR(255) NOT NULL COMMENT '业务类型',
  19. batch_no VARCHAR(255) COMMENT '批次号',
  20. supplier VARCHAR(255) NOT NULL COMMENT '供货单位',
  21. consignee VARCHAR(255) NOT NULL COMMENT '收货单位',
  22. gross_weight DOUBLE NOT NULL COMMENT '毛重',
  23. gross_weight_time VARCHAR(255) NOT NULL COMMENT '毛重时间',
  24. tare_weight DOUBLE NOT NULL COMMENT '皮重',
  25. tare_weight_time VARCHAR(255) NOT NULL COMMENT '皮重时间',
  26. deduction DOUBLE DEFAULT 0 COMMENT '扣杂',
  27. net_weight DOUBLE NOT NULL COMMENT '净重',
  28. planned_quantity DOUBLE COMMENT '计划数量',
  29. executed_quantity DOUBLE COMMENT '执行数量',
  30. weighing_point VARCHAR(255) DEFAULT '山峡地磅' COMMENT '称重点',
  31. remarks TEXT COMMENT '备注',
  32. is_voided INT DEFAULT 0 COMMENT '是否作废(0=否, 1=是)',
  33. created_at VARCHAR(255) NOT NULL COMMENT '创建时间',
  34. INDEX idx_vehicle_no (vehicle_no),
  35. INDEX idx_plan_no (plan_no),
  36. INDEX idx_cargo_name (cargo_name),
  37. INDEX idx_gross_weight_time (gross_weight_time),
  38. INDEX idx_is_voided (is_voided)
  39. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='地磅单表';
  40. -- =====================================================
  41. -- 2. 公司名称表 (companies)
  42. -- =====================================================
  43. CREATE TABLE IF NOT EXISTS companies (
  44. id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  45. name VARCHAR(255) NOT NULL UNIQUE COMMENT '公司名称',
  46. created_at VARCHAR(255) NOT NULL COMMENT '创建时间',
  47. INDEX idx_name (name)
  48. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='公司名称表';
  49. -- =====================================================
  50. -- 3. 货物名称表 (cargos)
  51. -- =====================================================
  52. CREATE TABLE IF NOT EXISTS cargos (
  53. id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  54. name VARCHAR(255) NOT NULL UNIQUE COMMENT '货物名称',
  55. created_at VARCHAR(255) NOT NULL COMMENT '创建时间',
  56. INDEX idx_name (name)
  57. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='货物名称表';
  58. -- =====================================================
  59. -- 4. 采购计划表 (purchase_plans)
  60. -- =====================================================
  61. CREATE TABLE IF NOT EXISTS purchase_plans (
  62. id INT PRIMARY KEY AUTO_INCREMENT COMMENT '主键ID',
  63. plan_date VARCHAR(255) NOT NULL COMMENT '计划日期',
  64. business_type VARCHAR(255) NOT NULL COMMENT '业务类型',
  65. product VARCHAR(255) NOT NULL COMMENT '产品名称',
  66. specification VARCHAR(255) COMMENT '规格',
  67. planned_quantity DOUBLE NOT NULL COMMENT '计划数量',
  68. vehicle_no VARCHAR(255) NOT NULL COMMENT '车牌号',
  69. customer_name VARCHAR(255) COMMENT '客户名称',
  70. remarks TEXT COMMENT '备注',
  71. created_at VARCHAR(255) NOT NULL COMMENT '创建时间',
  72. INDEX idx_plan_date (plan_date),
  73. INDEX idx_business_type (business_type),
  74. INDEX idx_vehicle_no (vehicle_no),
  75. INDEX idx_product (product)
  76. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='采购计划表';
  77. -- =====================================================
  78. -- 脚本执行完成
  79. -- =====================================================
  80. -- 说明:
  81. -- 1. 所有表使用 InnoDB 存储引擎,支持事务
  82. -- 2. 字符集使用 utf8mb4,支持完整的UTF-8字符(包括emoji)
  83. -- 3. 已添加常用字段的索引,提升查询性能
  84. -- 4. 所有字段都添加了中文注释,便于维护
  85. -- =====================================================