Access → Oracle (ODBC 匯出)
- 開啟 Access 資料庫,選取欲匯出的表。
- 將表名、欄名全部改為 大寫英文 (Oracle 預設大寫,避免雙引號麻煩)。
- 檔案 → 匯出 → 另存新檔類型選「ODBC Database」。
- 若無 DSN,點「新建」→ 選「Oracle in OraDb10g_home1」→ 完成 → 填入 TNS 服務名、用戶、密碼 → 測試連線成功。
- 確定後 Access 自動建立目標表並寫入資料 (不需手建 DDL)。
注意:Access 欄位若為中文名稱,匯出前必須改為英文,否則 Oracle 端會建立中文欄名需雙引號查詢。
Oracle → Access (外部資料匯入)
- Access → 外部資料 → 新增資料來源 → 從資料庫 → ODBC Database。
- 選擇/建立 Oracle ODBC DSN (同前步驟)。
- 登入後選擇欲匯入的表/視圖,確定即可建立連結表或匯入本地表。
驗證與常見問題
- 匯入後在 Oracle 查詢:
SELECT * FROM user_tables WHERE table_name = 'YOUR_TABLE'。
- 資料型別對應:Access 長整數 → Oracle NUMBER(10)、雙精度 → NUMBER、文字 → VARCHAR2(255)、日期/時間 → DATE。
- 大量資料建議:Access 先匯出 CSV,再用 SQL*Loader / 外部表載入 Oracle,效能優於 ODBC 百倍。
- 編碼問題:Access (ANSI) → Oracle (AL32UTF8) 需確認 ODBC 驅動程式設定
Force SQL_WCHAR Support 或使用 Unicode 版驅動。
替代方案:Oracle SQL Developer / Data Pump
- SQL Developer → 匯入精靈 → 直接讀取 Access (.mdb/.accdb) → 對應型別 → 產生 DDL + 資料載入。
- Data Pump (expdp/impdp) 配合外部表,適合自動化排程。