数据集或数据网格到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();
}
}
我看过一些教程,但是我不懂。谢谢你的帮助!
DataSet
对象包含一个Tables
属性。按照文档中给出的示例,您应该能够创建SqlCommand
来适当地更新SQL server表。
该选项对插入的数据提供了更多的控制,并且在源数据与目标数据不像BULK INSERT
或SqlBulkCopy
要求的那样很好地对齐时提供了灵活性。