C#将execl文件数据导入数据库(sql server)

本文介绍如何使用C#通过NPOI库将Excel数据批量导入到SQL Server数据库,同时处理数据去重,确保不重复插入已存在的球员信息。
摘要由CSDN通过智能技术生成

  最近在做一个球员管理系统,在系统中添加球员信息时必须单个添加,所以考虑用execl表格的形式批量添加球员相关数据(execl内容形式要与数据库形式对应),且添加的过程中要实现重复球员信息过滤,也就是说,已经在数据库中存在的,就不再进行添加了。下面是实现的具体过程:

第一步:将execl表格内容存储在DataTable中

1、导入npoi数据包(百度下载添加引用即可)

2、添加using NPOI.SS.UserModel

3、新建execl文件,并输入要添加的内容

  我在桌面新建了一个球员数据的execl文件,因为我的数据库是七列,所以文件的内容也是分为七列来输入的,分别是 姓名、号码、身高、体重、位置、总冠军个数、百度百科链接

4、选择要打开的文件

  利用OpenFileDialog属性找到要导入的文件,利用fileName返回完整文件路径

OpenFileDialog fileDialog = new OpenFileDialog();
fileDialog.Multiselect = true;
fileDialog.Title = "请选择文件";
fileDialog.Filter = "所有文件(*xls*)|*.xls*"; //设置要选择的文件的类型
string fileName = "";
if (fileDialog.ShowDialog() == DialogResult.OK)
{
    fileName = fileDialog.FileName;//返回文件的完整路径                
}

5、读取文件内容,并保存在DataTable中

 具体代码如下: 

IWorkbook workbook = null;  //新建IWorkbook对象  
FileStream fileStream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
if (fileName.IndexOf(".xls") > 0) // 2003版本  
{
     workbook = new HSSFWorkbook(fileStream);  //xls数据读入workbook  
}
ISheet sheet = workbook.GetSheetAt(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是C# WinForm中将Excel数据导入SQL Server数据库中的步骤: 1. 需要添加对Microsoft.Office.Interop.Excel和System.Data.SqlClient的引用。 2. 建立一个Windows Form应用程序,并在表单上添加一个按钮,用于触发导入Excel数据的过程。 3. 在按钮的Click事件中编写代码,打开Excel文件并读取数据。 ```csharp using Excel = Microsoft.Office.Interop.Excel; Excel.Application excelApp = new Excel.Application(); Excel.Workbook workbook = excelApp.Workbooks.Open(@"C:\example.xlsx"); Excel.Worksheet worksheet = workbook.Sheets[1]; int rowsCount = worksheet.UsedRange.Rows.Count; int columnsCount = worksheet.UsedRange.Columns.Count; for (int row = 1; row <= rowsCount; row++) { for (int col = 1; col <= columnsCount; col++) { string cellValue = (worksheet.Cells[row, col] as Excel.Range).Value.ToString(); // Do something with the cell value } } workbook.Close(); excelApp.Quit(); ``` 4. 创建一个SqlConnection对象,用于连接到SQL Server数据库。 ```csharp using System.Data.SqlClient; SqlConnection connection = new SqlConnection("Data Source=serverName;Initial Catalog=databaseName;Integrated Security=True"); connection.Open(); ``` 5. 创建一个SqlCommand对象,用于执行插入语句。 ```csharp SqlCommand command = new SqlCommand("INSERT INTO TableName (Column1, Column2) VALUES (@Value1, @Value2)", connection); command.Parameters.AddWithValue("@Value1", cellValue1); command.Parameters.AddWithValue("@Value2", cellValue2); command.ExecuteNonQuery(); ``` 6. 在循环中使用SqlCommand对象插入数据。 7. 关闭SqlConnection对象。 ```csharp connection.Close(); ``` 完成以上步骤后,您的C# WinForm应用程序就能够将Excel数据导入SQL Server数据库中了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值