Skip to content

改善 MSSQL 匯出相容性,新增可選 SNAPSHOT 與設定復原 - #39

Merged
shadowjohn merged 14 commits into
masterfrom
codex/mssql-export-preflight-compat
Oct 13, 2026
Merged

shadowjohn merged 14 commits into
masterfrom
codex/mssql-export-preflight-compat

Conversation

@shadowjohn

Copy link
Copy Markdown
Owner

修正 MSSQL 匯出遇到權限不足、延伸屬性與同資料庫限定 view 參照時的相容性問題,並讓資料匯出可自行選擇一致性模式。

  • 新增前置條件診斷與重新檢查;保留支援型別的延伸屬性及其原始型別資訊,將已驗證的同來源資料庫 view 參照改寫為目標資料庫內的參照。
  • SNAPSHOT 預設為「否」,使用 READ COMMITTED 並提示跨表讀取可能不一致;缺少 ALTER 權限時停用選項。選擇「是」時檢查能力與權限,必要時暫時啟用;原本 ON 保持 ON,只有本次從 OFF 啟用的設定才在完成、取消或失敗後於時限內嘗試恢復 OFF。
  • 加入同資料庫互斥、持久化復原紀錄與原生精靈提示。能力撤回或匯出忙碌時要求明確重新檢查;復原無法確認時保留實際狀態及紀錄,不自動切換模式重試。

驗證:

  • 最終 Release smoke 199 組、AutoReleasePolicy、Debug/Release build 與 git diff --check 通過。
  • SQL Server 2025 LocalDB 七種 profile、57 項情境、29 次還原:17 次成功、12 次預期拒絕;涵蓋一致性差異、設定生命週期、權限、屬性、view 參照、Geometry 與資料比對。28 個測試資料庫均已清除。
  • 上述 LocalDB 測試先於最後的錯誤分類/UI 修正;最終修正已通過針對性回歸及完整測試套件,未重跑 LocalDB 矩陣。

SQL Server 2019 正式環境、SSH/真實網路或斷電、實體 DPI/音效及真人長時間操作仍待驗證。大於 2 GiB 的歷史驗證未於本版重跑;本機 build 使用既有套件快取。完整證據與邊界見 verification.md。

@shadowjohn
shadowjohn merged commit d45c903 into master Oct 13, 2026
1 check passed
@shadowjohn
shadowjohn deleted the codex/mssql-export-preflight-compat branch October 13, 2026 08:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant