高手说下
怎么将excel文档上传之后将文档中的数据插入到数据库中 求源码
[解决办法]
sqlserver数据库有内置函数xp_cmdshell,可以将excel数据导入数据库。
[解决办法]
当excel上传到服务器上以后,可以把excel当成一个数据库读,然后再插入想要的数据库中
C#读取excel数据例子
OleDbConnection conn = new OleDbConnection();
try
{
string FilePaths = FilePath;
// ' F:\G2000-S041 G2000MEN GMF MASS NON-CHINA SP-2012 ORDER FORM.xls
dynamic FileWZ = FilePaths.LastIndexOf(".");
//文件的位置
dynamic File_H_Z = FilePaths.Substring(FileWZ);
//得到后缀
if (File_H_Z == ".xls")
{
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source =" + FilePath + ";Extended Properties ='Excel 8.0;HDR=YES;IMEX=1'";
}
if (File_H_Z == ".xlsx")
{
conn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source = " + FilePath + ";Extended Properties ='Excel 12.0;HDR=YES;IMEX=1'";
}
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
//return conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] {null,null,null,"TABLE"});
OleDbDataAdapter adapter = new OleDbDataAdapter("select * from [Sheet1$]", conn);
DataSet myDataSet = new DataSet();
adapter.Fill(myDataSet);
if (myDataSet.Tables.Count > 0)
{
return myDataSet.Tables[0];
}
return null;
}
catch (Exception ex)
{
throw ex;
}
finally
{
if ((conn != null))
conn.Close();
if ((conn != null))
conn.Dispose();
}