SQL Server change model
01Rowversion is an ordering clue, not business time.
A Microsoft SQL Server route may span on-premises estates, cloud-hosted databases, reporting stores, and partner destinations. Schemas, views, type conversions, query load, transaction scope, and write behavior must be explicit for a repeatable production flow.
Server, database, schema, view
Define server and database, schema, tables or views, query, selected columns, filters, ordering, keys, time zones, and SQL Server-specific types. Confirm the selection can be repeated and reconciled.
Resume with token plus key
Use deterministic batches or checkpoints for large extracts and loads. Set transaction boundaries so a retry can identify committed work and avoid duplicating identity, key, or update operations.
Map SQL Server types deliberately
Specify nulls, decimal precision, date and time types, Unicode text, binary values, identity and keys, insert or update policy, constraints, rejected rows, and reconciliation counts.
SQL Server-aware Flower route
02Keep query visibility and write atomicity in the same plan.
Flower's SQL Server adapter supports structured reads, writes, and transactions using SQL Server parameter and identifier rules. The route adds deterministic selection, processing, validation, lineage, and recovery around those database operations.
Extract with a stable cursor
A rowversion watermark should be paired with a unique key and explicit ordering. Persist the upper bound and last tuple for each batch; do not convert the binary token to a date or use it to infer elapsed time.
Normalize before crossing engines
Validate decimal scale, datetime2 precision, datetimeoffset, Unicode nvarchar, uniqueidentifier, bit, varbinary, and nullability. Identity and computed columns need an explicit destination policy instead of blind insertion.
Commit with affected-row evidence
Prepared writes execute in bounded transactions. Flower reconciles committed keys, affected rows, rejects, and constraints before advancing the source cursor; an interrupted connection triggers verification, not automatic replay.
SQL Server operating policy
03Choose isolation with the database owner, not by accident.
Default READ COMMITTED can wait on locks; READ_COMMITTED_SNAPSHOT and SNAPSHOT use row versions and consume version-store resources. An extraction design must fit the database configuration, workload, and recovery objective.
Locking or version-store budget
Confirm database options before selecting an isolation level. Set query timeouts, batch duration, pool limits, and a monitoring plan for blocking, tempdb version-store growth, transaction log pressure, and extraction backlog.
Change and delete coverage
Rowversion can identify rows touched since a token, but it does not explain the change and cannot reveal a row that was hard-deleted. Pair it with business keys, soft-delete or tombstone policy, and periodic reconciliation.
Topology and read target
Document whether the endpoint is primary, a readable replica, Azure SQL, or another managed form; define expected lag and failover behavior. A connection that succeeds after failover still needs cursor and snapshot reconciliation.