#!/usr/bin/env python3 # -*- coding: utf-8 -*- """ 清除缺貨資料表 """ import sys import os sys.path.insert(0, os.path.dirname(os.path.abspath(__file__))) from database.vendor_manager import VendorDatabaseManager from database.vendor_models import VendorStockout def clear_stockout_data(): """清除所有缺貨資料""" db = VendorDatabaseManager() session = db.get_session() try: # 統計資料數量 count = session.query(VendorStockout).count() print("=" * 80) print(f"清除缺貨資料") print("=" * 80) print(f"\n目前資料庫中有 {count} 筆缺貨資料") print(f"\n⚠️ 即將清除所有資料!") # 刪除所有記錄 session.query(VendorStockout).delete() session.commit() print(f"\n✅ 已清除 {count} 筆資料") print(f"\n現在可以重新匯入正確的 Excel 資料了") print("=" * 80) except Exception as e: session.rollback() print(f"\n❌ 錯誤: {e}") import traceback traceback.print_exc() finally: session.close() if __name__ == '__main__': clear_stockout_data()