i'm having a error message sent everytime i try to copy data from a data table to an sql database using Sqlbulkcopy. This is the code i'm using:
static void InsertDataIntoSQLServerUsingSQLBulkCopy(DataTable csvFileData)
{
using (SqlConnection dbConnection = new SqlConnection(@"Data Source=DESKTOP-LNCGI78\SQLEXPRESS;Initial Catalog=Testdatabase;Integrated Security=SSPI;"))
{
dbConnection.Open();
using (SqlBulkCopy s = new SqlBulkCopy(dbConnection))
{
s.DestinationTableName = "dbo.Table";
foreach (var column in csvFileData.Columns)
s.ColumnMappings.Add(column.ToString(), column.ToString());
s.WriteToServer(csvFileData);
}
}
}
This is the error :System.InvalidOperationException: 'Cannot access destination table. i checked permissions to write in the table, all seems fine and i tried to insert some rows in it with success. I don't know what i'm missing or what i did wrong.
表一词是SQL Server中的保留词,因此您需要添加方括号:
s.DestinationTableName = "dbo.[Table]";
I had a similiar problem what I did is just s.DestinationTableName="[TableName]"
. So no dbo.[TableName] just [TableName]
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.