Files
jiu/backend/seeds/clear_shop.sql
T
wangjia acf2b22201
Deploy / deploy (push) Successful in 1m14s
fix(seeds): 修复多门店种子数据互不干扰
- S001.sql: 修复 INSERT IGNORE INTO 缺少空格的语法错误
- S002.sql: 重写为动态 @shop_id 模式,移除 TRUNCATE,改用 INSERT IGNORE INTO
- clear_shop.sql: 新增按 @shop_code 清空单店数据的参数化脚本
- scripts/dev.sh: seed 命令支持 --clear 参数(先清空再写入)
- seed.yml: 新增 clear 输入参数,支持按需清空后写入

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 13:52:47 +08:00

33 lines
1.5 KiB
SQL

-- clear_shop.sql — 清空指定门店的所有业务数据
-- 用法(调用方负责传入 @shop_code 变量):
-- SET @shop_code = 'S001'; SOURCE clear_shop.sql;
-- 或由脚本拼接:
-- echo "SET @shop_code='S001';" | cat - clear_shop.sql | mysql ...
SET @sid = (SELECT id FROM shops WHERE code = @shop_code LIMIT 1);
SET FOREIGN_KEY_CHECKS = 0;
DELETE FROM inventory_check_items WHERE shop_id = @sid;
DELETE FROM inventory_checks WHERE shop_id = @sid;
DELETE FROM inventory_logs WHERE shop_id = @sid;
DELETE FROM inventories WHERE shop_id = @sid;
DELETE FROM stock_out_items WHERE shop_id = @sid;
DELETE FROM stock_out_orders WHERE shop_id = @sid;
DELETE FROM stock_in_items WHERE shop_id = @sid;
DELETE FROM stock_in_orders WHERE shop_id = @sid;
DELETE FROM finance_records WHERE shop_id = @sid;
DELETE FROM number_rules WHERE shop_id = @sid;
DELETE FROM product_images WHERE shop_id = @sid;
DELETE FROM partners WHERE shop_id = @sid;
DELETE FROM warehouses WHERE shop_id = @sid;
DELETE FROM product_spec_options WHERE shop_id = @sid;
DELETE FROM product_series_options WHERE shop_id = @sid;
DELETE FROM product_name_options WHERE shop_id = @sid;
DELETE FROM products WHERE shop_id = @sid;
DELETE FROM product_categories WHERE shop_id = @sid;
DELETE FROM users WHERE shop_id = @sid;
DELETE FROM shops WHERE id = @sid;
SET FOREIGN_KEY_CHECKS = 1;