-- ======================================== -- 验证方案A数据库完整性 -- 创建日期:2026-01-23 -- 数据库:peixue -- ======================================== USE peixue; SELECT '========================================' AS ''; SELECT '方案A数据库完整性验证' AS ''; SELECT '========================================' AS ''; -- ======================================== -- 1. 检查新表是否存在 -- ======================================== SELECT '1. 检查新表是否存在' AS ''; SELECT '----------------------------------------' AS ''; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ coupon表存在' ELSE '❌ coupon表不存在' END AS result FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'coupon'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ user_coupon表存在' ELSE '❌ user_coupon表不存在' END AS result FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'user_coupon'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ user_address表存在' ELSE '❌ user_address表不存在' END AS result FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'user_address'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ user_package表存在' ELSE '❌ user_package表不存在' END AS result FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'user_package'; -- ======================================== -- 2. 检查订单表新字段 -- ======================================== SELECT '' AS ''; SELECT '2. 检查订单表新字段' AS ''; SELECT '----------------------------------------' AS ''; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ payment_method字段存在' ELSE '❌ payment_method字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'payment_method'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ wallet_amount字段存在' ELSE '❌ wallet_amount字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'wallet_amount'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ timecard_id字段存在' ELSE '❌ timecard_id字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'timecard_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ package_id字段存在' ELSE '❌ package_id字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'package_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ coupon_id字段存在' ELSE '❌ coupon_id字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'coupon_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ coupon_discount字段存在' ELSE '❌ coupon_discount字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'coupon_discount'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ service_address_id字段存在' ELSE '❌ service_address_id字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'service_address_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ original_amount字段存在' ELSE '❌ original_amount字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'original_amount'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ discount_amount字段存在' ELSE '❌ discount_amount字段不存在' END AS result FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND COLUMN_NAME = 'discount_amount'; -- ======================================== -- 3. 检查索引 -- ======================================== SELECT '' AS ''; SELECT '3. 检查订单表索引' AS ''; SELECT '----------------------------------------' AS ''; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ idx_timecard_id索引存在' ELSE '❌ idx_timecard_id索引不存在' END AS result FROM information_schema.STATISTICS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND INDEX_NAME = 'idx_timecard_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ idx_package_id索引存在' ELSE '❌ idx_package_id索引不存在' END AS result FROM information_schema.STATISTICS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND INDEX_NAME = 'idx_package_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ idx_coupon_id索引存在' ELSE '❌ idx_coupon_id索引不存在' END AS result FROM information_schema.STATISTICS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND INDEX_NAME = 'idx_coupon_id'; SELECT CASE WHEN COUNT(*) > 0 THEN '✅ idx_service_address_id索引存在' ELSE '❌ idx_service_address_id索引不存在' END AS result FROM information_schema.STATISTICS WHERE TABLE_SCHEMA = 'peixue' AND TABLE_NAME = 'order' AND INDEX_NAME = 'idx_service_address_id'; -- ======================================== -- 4. 查看测试数据 -- ======================================== SELECT '' AS ''; SELECT '4. 查看测试数据' AS ''; SELECT '----------------------------------------' AS ''; SELECT '优惠券测试数据:' AS ''; SELECT id, name, type, discount_type, discount_value, min_amount, status FROM coupon LIMIT 5; SELECT '' AS ''; SELECT '用户地址测试数据:' AS ''; SELECT id, user_id, contact_name, contact_phone, province, city, district, address FROM user_address LIMIT 5; -- ======================================== -- 5. 统计信息 -- ======================================== SELECT '' AS ''; SELECT '5. 数据统计' AS ''; SELECT '----------------------------------------' AS ''; SELECT (SELECT COUNT(*) FROM coupon) AS '优惠券数量', (SELECT COUNT(*) FROM user_coupon) AS '用户优惠券数量', (SELECT COUNT(*) FROM user_address) AS '用户地址数量', (SELECT COUNT(*) FROM user_package) AS '用户套餐数量'; -- ======================================== -- 完成 -- ======================================== SELECT '' AS ''; SELECT '========================================' AS ''; SELECT '✅ 方案A数据库验证完成!' AS ''; SELECT '========================================' AS '';