C# 从excel导入sql数据库时更新以前的记录
我需要这个代码的帮助。我正在尝试从excel导入SQL数据库。列被设置为“唯一”,以便在发现重复数据时忽略它。在这种情况下,如果有更新,我希望它更新数据,而不是忽略它。这是代码C# 从excel导入sql数据库时更新以前的记录,c#,sql,excel,import,sqlbulkcopy,C#,Sql,Excel,Import,Sqlbulkcopy,我需要这个代码的帮助。我正在尝试从excel导入SQL数据库。列被设置为“唯一”,以便在发现重复数据时忽略它。在这种情况下,如果有更新,我希望它更新数据,而不是忽略它。这是代码 if (con.State == ConnectionState.Open) { con.Close(); } con.Open(); if (comboBox1.SelectedItem.ToString() == "Comis
if (con.State == ConnectionState.Open)
{
con.Close();
}
con.Open();
if (comboBox1.SelectedItem.ToString() == "Comissioned Sites")
{
string pathConn = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + txtFilePath.Text + ";Extended Properties=\"Excel 12.0;HDR=Yes;\";";
// Create Connection to Excel Workbook
using (OleDbConnection connection = new OleDbConnection(pathConn))
{
OleDbCommand command = new OleDbCommand("Select * FROM [" + txtSheet.Text + "$]", connection);
connection.Open();
// Create DbDataReader to Data Worksheet
using (OleDbDataReader dr = command.ExecuteReader())
{
// Bulk Copy to SQL Server
using (SqlBulkCopy bulkCopy = new SqlBulkCopy(con))
{
con.Open();
bulkCopy.DestinationTableName = "tblView";
bulkCopy.WriteToServer(dr);
con.Close();
}
}
}
MessageBox.Show("File Imported to Database Successfully");
}
那么你想要的是一个升级?查看
MERGE
将数据加载到具有自动递增id的暂存表中。然后在数据进入数据库后修复数据。