我想從文件中讀取數據並使用批量複製將其插入到數據庫表中。Sql批量複製無法訪問目標表
當我嘗試運行我的代碼,我得到的錯誤:「無法訪問Denstination表」
FlatTable的宣言。
System.Data.DataTable flatTableTempData = new System.Data.DataTable("FlatTable");
DataColumn DistrictColumn = new DataColumn();
DistrictColumn.ColumnName = "DistrictName";
// Create Column 3: TotalSales
DataColumn TownColumn = new DataColumn();
TownColumn.ColumnName = "TownName";
DataColumn FarmerColumn = new DataColumn();
FarmerColumn.ColumnName = "FarmerName";
flatTableTempData.Columns.Add(DistrictColumn);
flatTableTempData.Columns.Add(TownColumn);
flatTableTempData.Columns.Add(FarmerColumn);
這是我的代碼,以連接字符串,並使用批量複製插入:
using (SqlConnection con = new SqlConnection("Data Source=DRTARIQ-PC\\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=TestDB2"))
{
con.Open();
using (SqlBulkCopy s = new SqlBulkCopy(con))
{
s.DestinationTableName = flatTableTempData.TableName;
foreach (var column in flatTableTempData.Columns)
s.ColumnMappings.Add(column.ToString(), column.ToString());
s.BulkCopyTimeout = 500;
s.WriteToServer(flatTableTempData);
}
}
用戶執行此代碼是否具有足夠的權限在表上?我相信至少需要SELECT和INSERT。 – stuartd
我讀了關於權限我們如何給用戶這樣的權限......現在我需要他插入權限 – user1056466
我們可以看到「flatTableTempData」的聲明嗎? –