asp.net 怎么实现在网页中把用户提交的excel文件中的数据导入到sql数据库中

asp.net 怎么实现在网页中把用户提交的excel文件中的数据导入到sql数据库中,第1张

一、把Excel转换成DataTable

public static DataTable ExcelToDataTable(string strExcelFileName, string strSheetName)

{

string strConn = "Provider=Microsoft.Jet.OLEDB.4.0" + "Data Source=" + strExcelFileName + "" +"Extended Properties=Excel 5.0"

string strExcel = string.Format("select * from [{0}$]", strSheetName)

DataSet ds = new DataSet()

using (OleDbConnection conn = new OleDbConnection(strConn))

{

conn.Open()

OleDbDataAdapter adapter = new OleDbDataAdapter(strExcel, strConn)

adapter.Fill(ds, strSheetName)

conn.Close()

}

return ds.Tables[strSheetName]

}

二、向Access数据库插入数据的方法

public static void InsertDataToAccess(string _strPara,float _fPara)

{

OleDbConnection oleDbConn = new OleDbConnection()

oleDbConn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0Data Source=C:\ExcelData.mdbUser Id=adminPassword="

oleDbConn.Open()

string strInsertString = "INSERT INTO tb_excelData (strCollumn1,fCollumn2) VALUES (@strCollumn1,@fCollumn2)"

OleDbCommand oComm = new OleDbCommand(strInsertString, oleDbConn)

oComm.Parameters.Add("@strCollumn1", OleDbType.Char , 50)

oComm.Parameters["@strCollumn1"].Value = _strPara

oComm.Parameters.Add("@fCollumn2", OleDbType.Double)

oComm.Parameters["@fCollumn2"].Value = _fPara

ocomm.ExecuteNonQuery()

oleDbConn.Close()

}

三、将Excel转换成DataTable,然后插入数据库

public static void DataTableToDB()

{

string _strExcelFileName = @"D:\example.xls"

DataTable dtExcel = ExcelToDataTable(_strExcelFileName,"Sheet1")

for (int i = 0i <dtExcel.Rows.Counti++)

{

InsertDataToAccess(dtExcel.Rows[0].ToString(), float.Parse(dtExcel.Rows[1].ToString()))

}

}

你提的这个问题相当的笼统。

针对你如此高屋建瓴式的谜面,只能回答你,

整个过程一共分三步。

1. 准备好将要读取的Excel文档(远程的话,要上传到服务器),必要地时候要有格式的检查。

2. 使用C#读取Excel,转成Object或者只能转成dataTable对象。

3. 插入数据库。

看着是不是有些熟悉呢?

是滴,这和著名问题,“把大象装冰箱一共要几步”的解法在思路上基本是一样一样一样的。

PS: 没有具体的要求是无法写出具体代码的。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9893010.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-03
下一篇2023-05-03

发表评论

登录后才能评论

评论列表(0条)

    保存