Files
SQLWorkbench/docs/PHASE66-DATA-COMPARISON.md

22 lines
1.2 KiB
Markdown

# Phase 66 — Advanced Data Comparison (bounded preview)
The Schemas navigator now provides **Compare Table Data…** on each database.
Select another database on the same connection and a shared base table, then click Compare.
The comparison is **read-only**. It compares exact returned row values, including duplicates,
using counts of canonical JSON-encoded row arrays. Both databases must have matching column
names and order in their introspection snapshots. Views are excluded.
## Important limitations
- A maximum of **500 rows per database** are compared. An extra row is retrieved to detect truncation.
- Without a deterministic ordering, MySQL may return different subsets on repeated queries.
- No primary-key alignment or update detection is implemented in this phase; changed records
appear as removed/added row values.
- The native MySQL protocol currently represents result cells as strings, so SQL NULL and
a literal string may not be distinguishable. Do not use this comparison as a data-integrity audit.
- For large datasets, Phase 67 should implement paginated, key-aware comparison with safe
conflict handling before any data synchronisation is offered.
This phase does not modify database records or create synchronization SQL.