数据集或数据网格到SQL Server数据库表

本文关键字:SQL Server 数据库 网格 数据 数据网 数据集 | 更新日期: 2023-09-27 18:13:20

我有一个DataGrid,我用DataSet的数据填充。DataSet从Excel文件中获取数据,OpenFileDialog。我想把这个数据插入到我的SQL Server Express表中。我该怎么做呢?

填充DataGrid的代码:

private void btnOpen_Click_1(object sender, RoutedEventArgs e)
{
    OpenFileDialog openfile = new OpenFileDialog();
    openfile.DefaultExt = ".xlsx";
    openfile.Filter = "(.xlsx)|*.xlsx";
    //openfile.ShowDialog();
    var browsefile = openfile.ShowDialog();
    if (browsefile == true)
    {
        txtFilePath.Text = openfile.FileName;
        FileStream stream = File.Open(txtFilePath.Text, FileMode.Open, FileAccess.Read);
        Excel.IExcelDataReader excelReader = Excel.ExcelReaderFactory.CreateOpenXmlReader(stream);
        excelReader.IsFirstRowAsColumnNames = true;
        DataSet resultexc = excelReader.AsDataSet();
        dtGrid.ItemsSource = resultexc.Tables[0].DefaultView;
        excelReader.Close();
    }
}

我看过一些教程,但是我不懂。谢谢你的帮助!

数据集或数据网格到SQL Server数据库表

DataSet对象包含一个Tables属性。按照文档中给出的示例,您应该能够创建SqlCommand来适当地更新SQL server表。

该选项对插入的数据提供了更多的控制,并且在源数据与目标数据不像BULK INSERTSqlBulkCopy要求的那样很好地对齐时提供了灵活性。