方法一:SQL Server 匯入/匯出精靈(DTS/SSIS)
- 啟動:命令列
DTSWizard.exe 或 SSMS → 資料庫右鍵「工作」→「匯入資料」。
- 支援來源:SQL Server、文字檔、Access、Excel、OLE DB/ODBC 等。
- 產出:可儲存為 SSIS 套件(.dtsx)排程自動化執行。
方法二:OPENROWSET / OPENDATASOURCE T-SQL 直匯
-- 啟用 Ad Hoc Distributed Queries
EXEC sp_configure 'show advanced options', 1; RECONFIGURE;
EXEC sp_configure 'Ad Hoc Distributed Queries', 1; RECONFIGURE;
-- 匯入語法
INSERT INTO 目標表 (欄位1, 欄位2, 欄位3)
SELECT 欄位1, 欄位2, 欄位3
FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source="d:\source.mdb";Jet OLEDB:Database Password=密碼')...來源表;
方法三:Access 升遷精靈(最完整保留關聯)
- Access 2003 安裝時勾選「資料庫複寫」元件。
- 開啟 .mdb →「工具」→「資料庫實用工具」→「升遷精靈」。
- 選「新建資料庫」→ 指定 SQL Server 2005 Express 執行個體(
伺服器名\sqlexpress)→ 資料庫名稱。
- 勾選要遷移的表 → 表屬性預設 → 建立新 ADP 檔 → 完成。
- 開啟 ADP →「工具」→「資料庫實用工具」→「傳送資料庫」→ 伺服器輸入
伺服器名\sqlexpress → 完成。
- SSMS 即可看到遷移完成的資料庫,含表、關聯、索引。
選擇建議
- 需排程/自動化: 匯入/匯出精靈儲存 SSIS 套件。
- 一次性全庫遷移且保留關聯: Access 升遷精靈最完整。
- 程式碼控制單表同步: OPENROWSET T-SQL 最彈性。