SQL Compare
AI-powered hands-off comparison between databases. Generates modular, implementable sync scripts to align DDL and code across environments.
Intelligent Schema Comparison
╔══════════════════════════════════════════════════════════════════╗ ║ SQL COMPARE RESULTS ║ ║ ║ ║ Source: dev-database Target: prod-database ║ ║ Compared: 2024-12-25 10:30 Duration: 4.2 seconds ║ ╠══════════════════════════════════════════════════════════════════╣ ║ SUMMARY ║ ║ ─────────────────────────────────────────────────────────────── ║ ║ Tables: +3 new 2 modified 0 deleted ║ ║ Views: +1 new 1 modified 0 deleted ║ ║ Stored Procs: +5 new 8 modified 1 deleted ║ ║ Functions: +0 new 2 modified 0 deleted ║ ║ Indexes: +4 new 0 modified 2 deleted ║ ╠══════════════════════════════════════════════════════════════════╣ ║ MODULAR SYNC SCRIPTS GENERATED ║ ║ ─────────────────────────────────────────────────────────────── ║ ║ ║ ║ 📁 sync-scripts/ ║ ║ ├── 01-tables/ ║ ║ │ ├── 01-create-CustomerPreferences.sql ║ ║ │ ├── 02-create-OrderAuditLog.sql ║ ║ │ ├── 03-create-ShippingZones.sql ║ ║ │ ├── 04-alter-Orders-add-tracking.sql ║ ║ │ └── 05-alter-Products-add-weight.sql ║ ║ ├── 02-views/ ║ ║ │ ├── 01-create-vw_CustomerOrders.sql ║ ║ │ └── 02-alter-vw_SalesReport.sql ║ ║ ├── 03-procedures/ ║ ║ │ ├── 01-create-sp_ProcessRefund.sql ║ ║ │ ├── 02-alter-sp_GetCustomerOrders.sql ║ ║ │ └── ... (11 more) ║ ║ ├── 04-functions/ ║ ║ │ └── 01-alter-fn_CalculateDiscount.sql ║ ║ ├── 05-indexes/ ║ ║ │ ├── 01-create-IX_Orders_CustomerDate.sql ║ ║ │ └── ... (3 more) ║ ║ └── 00-deploy-all.sql ← Master deployment script ║ ║ ║ ║ [Deploy to Target] [Export Scripts] [View Details] ║ ╚══════════════════════════════════════════════════════════════════╝
Key Features
AI-Driven Comparison
Intelligent comparison that understands semantic differences, not just text changes. Detects refactored code and renamed objects.
Modular Scripts
Generates individual, reviewable scripts for each change. No monolithic deployment files that are impossible to debug.
Safe Deployment Order
Automatically orders scripts based on dependencies. Tables before FKs, functions before procedures that use them.
DDL & Code Coverage
Compares tables, views, stored procedures, functions, triggers, indexes, constraints, and permissions.
Environment Aware
Handles environment-specific configurations. Excludes dev-only objects, adjusts for staging vs production.
Rollback Scripts
Automatically generates rollback scripts for each change. One-click undo if something goes wrong.
Detailed Diff View
CREATE PROCEDURE dbo.sp_GetCustomerOrders
@CustomerId INT,
- @StartDate DATE = NULL
+ @StartDate DATE = NULL,
+ @IncludeReturns BIT = 0
AS
BEGIN
SELECT
o.OrderId,
o.OrderDate,
o.Total,
- o.Status
+ o.Status,
+ o.TrackingNumber,
+ CASE WHEN r.ReturnId IS NOT NULL THEN 1 ELSE 0 END AS HasReturn
FROM Orders o
+ LEFT JOIN Returns r ON o.OrderId = r.OrderId
+ AND @IncludeReturns = 1
WHERE o.CustomerId = @CustomerId
AND (@StartDate IS NULL OR o.OrderDate >= @StartDate)
ORDER BY o.OrderDate DESC
ENDCLI Usage
# Compare two databases sql2ai compare \ --source "Server=dev-db;Database=AppDB" \ --target "Server=prod-db;Database=AppDB" \ --output ./sync-scripts # Compare with options sql2ai compare \ --source dev-db \ --target prod-db \ --include tables,views,procedures \ --exclude "*_backup,*_temp" \ --generate-rollback \ --output ./deployment # Preview changes without generating scripts sql2ai compare --source dev-db --target prod-db --preview # Compare specific objects sql2ai compare \ --source dev-db \ --target prod-db \ --objects "dbo.Orders,dbo.sp_*" # Deploy generated scripts sql2ai compare deploy \ --scripts ./sync-scripts \ --target prod-db \ --dry-run # Generate deployment report sql2ai compare report \ --source dev-db \ --target prod-db \ --format html \ --output comparison-report.html
Deployment Workflow
Stop Manual Schema Comparisons
Let SQL Compare handle the tedious work of finding differences and generating deployment-ready sync scripts.
Request Demo