-- ============================================================================ -- LittleShop Database Reset - Preserve Bot & SilverPay Configuration -- ============================================================================ -- This script clears all transactional data while preserving: -- - Bot registrations and tokens -- - User accounts (admin) -- - SilverPay integration settings -- - Push notification subscriptions -- ============================================================================ BEGIN TRANSACTION; -- ============================================================================ -- STEP 1: Clear Transactional Data (Orders, Payments, Messages) -- ============================================================================ DELETE FROM CryptoPayments; DELETE FROM OrderItems; DELETE FROM Orders; DELETE FROM CustomerMessages; DELETE FROM Customers; -- ============================================================================ -- STEP 2: Clear Product Catalog -- ============================================================================ DELETE FROM ProductPhotos; DELETE FROM ProductMultiBuys; DELETE FROM ProductVariants; DELETE FROM Products; DELETE FROM Categories; -- ============================================================================ -- STEP 3: Reset Auto-Increment Sequences (optional, for clean IDs) -- ============================================================================ DELETE FROM sqlite_sequence WHERE name IN ( 'CryptoPayments', 'OrderItems', 'Orders', 'CustomerMessages', 'Customers', 'ProductPhotos', 'ProductMultiBuys', 'ProductVariants', 'Products', 'Categories' ); -- ============================================================================ -- STEP 4: Verify Preserved Data -- ============================================================================ -- These should return rows (data preserved): -- SELECT COUNT(*) AS BotRegistrations FROM BotRegistrations WHERE IsActive = 1; -- SELECT COUNT(*) AS AdminUsers FROM Users WHERE Role = 'Admin'; -- SELECT COUNT(*) AS PushSubscriptions FROM PushSubscriptions; -- These should return 0 (data cleared): -- SELECT COUNT(*) AS Orders FROM Orders; -- SELECT COUNT(*) AS Products FROM Products; -- SELECT COUNT(*) AS Categories FROM Categories; COMMIT; -- ============================================================================ -- Success! Database reset complete. -- Preserved: Bot tokens, Admin users, Push subscriptions -- Cleared: Orders, Products, Categories, Customers, Payments -- ============================================================================