[英]How to transfer data from Microsoft Access to SQL server 2008?
在我目前的項目中,我每天都要將數據從MS Access傳輸到Sql Server 2008標准版。 當然我可以使用SQL遷移工具將Access數據庫轉換為Sql Server數據庫,但問題是我必須每天一次又一次地這樣做以繼續更新我的sql server數據庫。
有什么方法可以編寫C#程序,將數據從MS ACCESS文件傳輸到SQL SERVER?
任何幫助將受到高度贊賞。
正如Serkan在他的評論中所建議的那樣,我會使用SSIS(SQL Server Integration Services)來完成這項任務,特別是當你已經在使用SQL Server時,SSIS正是為了支持這種任務而構建的。
SSIS非常靈活(與大多數ETL包一樣),您可以添加自定義邏輯來轉換數據(如果有的話)
此外,如果在SQL Server中創建作業,則可以計划此任務,此作業將執行連接到MS Access數據庫的SSIS包,並自動將其用作數據源。
此外,您可以選擇直接從C#代碼調用SSIS包(如果由於某種原因,您需要不使用預定作業但需要為用戶提供某種界面才能啟動任務)使用DTExec.exe
或者使用通過Microsoft.SQLServer.ManagedDTS.dll.
公開的類Microsoft.SQLServer.ManagedDTS.dll.
請參閱此鏈接 ,了解如何直接從C#代碼調用SSIS包
我會建議一個ETL(例如,參見Talend Open Studio )。 您可以設計傳輸作業(必要時進行適當的轉換),然后使用OS任務計划程序每天運行作業。
注意:Talend Open Studio生成java或perl代碼。
為什么不直接將數據遷移到SQL Server並使用Access應用程序作為SQL Server數據庫的前端而不是Jet / ACE數據庫?
您還可以在C#中運行更新/刪除/追加查詢。 使用varous IN子句指向有問題的數據庫。 你在C#中究竟是怎么做的我不知道但是在Access中這些很容易做到。
[SELECT | INSERT] INTO destination IN
{path | ["path" "type"] | ["" [type; DATABASE = path]]}
要標識源表:
FROM tableexpression IN
{path | ["path" "type"] | ["" [type; DATABASE = path]]}
從Access 97幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.