2013-07-03 162 views
1

經過一番研究,我找到了下面的代碼..我想知道我在做什麼錯誤,因爲代碼在標有三顆星的行失敗。我想將所有數據複製到SQL服務器上的名爲api_ReportData的表中。將數據從DataTable添加到SQL數據庫

當嘗試,我得到了以下錯誤:Cannot find destination table.

這是我的代碼:

DataTable api_ReportData = CreateDataTable(); 

string sqlConnectionString = 
    "Server = 10.72.8.196; Database = datastaoge; User Id = sa; Password = Passw0rd"; 

// Copy the DataTable to SQL Server 
using (SqlConnection dbConnection = new SqlConnection(sqlConnectionString)) 
{ 
    dbConnection.Open(); 

    using (SqlBulkCopy s = new SqlBulkCopy(dbConnection)) 
    { 
     *** s.DestinationTableName = Aapi_ReportData.TableName; 

     foreach (var column in Adapi_ReportData.Columns) 
      s.ColumnMappings.Add(column.ToString(), column.ToString()); 

     s.WriteToServer(api_ReportData); 
    } 
} 
+0

什麼是錯誤? –

+6

你給我們的代碼,你正在使用,很好。第1步完成。你已經告訴我們它在這裏打破了,太好了。第2步完成。現在第3步,你沒有做。那是,*它怎麼失敗*?什麼錯誤?它是否默默地失敗?如果它引發異常,則將整個錯誤和堆棧跟蹤放入您的問題中。 – Arran

+0

「DestinationTableName」屬性是一個字符串。嘗試's.DestinationTableName =「Aapi_ReportData.TableName」;' – user1429080

回答

0

您的錯誤的含義是:

與Aapi_ReportData名稱回報目標表.TableName在您的目標數據庫中不存在。

如果您的源表和目標表具有相同的架構,則不需要使用s.ColumnMappings.Add

相關問題