.net Excel数据导入到sql数据库
2012-08-13 08:50
501 查看
1、获得Excel数据集
//创建一个数据链接
string strCon = string.Format(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;IMEX=1""", path); //如果不加上后面的“imex=1”就只能读取字符串的内容 无法读取其他如数字的内容
OleDbConnection myConn = new OleDbConnection(strCon);
myConn.Open();
DataTable dt = myConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (dt == null || dt.Rows.Count == 0)
{
return null;
}
string sheet_name = dt.Rows[tableIndex]["TABLE_NAME"].ToString();
string strCom = " SELECT * FROM [" + sheet_name + "] ";
//打开数据链接,得到一个数据集
OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);
//创建一个 DataSet对象
DataSet myDataSet = new DataSet();
//得到自己的DataSet对象
myCommand.Fill(myDataSet, sheet_name);
2、执行数据库插入操作
DataTable dt = myDataSet.Table[0];
int count = 0;
StringBuilder strSql = new StringBuilder();
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr = dt.Rows[i];
if (dr[0].ToString().Trim().Length == 0)
{
continue;
}
strSql.Append(@"INSERT INTO 表
(列名)
VALUES
(");
strSql.AppendFormat("'{0}',", dr[6].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[0].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[1].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[2].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[3].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[4].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}')", dr[5].ToString().Trim());
}
count = DBUtility.ExecuteSql(strSql.ToString());
//创建一个数据链接
string strCon = string.Format(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=""Excel 8.0;IMEX=1""", path); //如果不加上后面的“imex=1”就只能读取字符串的内容 无法读取其他如数字的内容
OleDbConnection myConn = new OleDbConnection(strCon);
myConn.Open();
DataTable dt = myConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (dt == null || dt.Rows.Count == 0)
{
return null;
}
string sheet_name = dt.Rows[tableIndex]["TABLE_NAME"].ToString();
string strCom = " SELECT * FROM [" + sheet_name + "] ";
//打开数据链接,得到一个数据集
OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn);
//创建一个 DataSet对象
DataSet myDataSet = new DataSet();
//得到自己的DataSet对象
myCommand.Fill(myDataSet, sheet_name);
2、执行数据库插入操作
DataTable dt = myDataSet.Table[0];
int count = 0;
StringBuilder strSql = new StringBuilder();
for (int i = 0; i < dt.Rows.Count; i++)
{
DataRow dr = dt.Rows[i];
if (dr[0].ToString().Trim().Length == 0)
{
continue;
}
strSql.Append(@"INSERT INTO 表
(列名)
VALUES
(");
strSql.AppendFormat("'{0}',", dr[6].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[0].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[1].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[2].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[3].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}',", dr[4].ToString().Trim().Replace("'", "\""));
strSql.AppendFormat("'{0}')", dr[5].ToString().Trim());
}
count = DBUtility.ExecuteSql(strSql.ToString());
相关文章推荐
- C#、.net将Excel数据表导入SQL数据库的两种方法
- .net实现将Excel中的数据导入数据库
- SQL数据库表 与excel 数据导入导出
- .net实现将Excel中的数据导入数据库 ---转 飛雪飄寒
- EXCEL数据导入SQL数据库
- .NET导入Excel数据
- .net中将gridview数据导入excel中
- 将excel文件中的数据导入导出至SQL数据库中
- asp.net 将Excel数据导入到GridView和SQL数据库
- .net导入Excel数据遇到问题(SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDataso) .
- .NET中将数据导出(导入)Excel文件
- C#将SQL数据库中数据导入Excel中,并将Excel中反导入SQL数据库中
- 将excel中数据导入到sql数据库,,从数据库导出到excel中
- 将excel文件中的数据导入导出至SQL数据库中(Microsoft.Jet.OLEDB.4.0和Microsoft.ACE.OLEDB.12.0|office2003和office2007)
- 从Excel文件中,导入数据到SQL数据库中
- Excel数据导入sql数据库
- C# 连接sql数据库对 access,excel导入导出操作 一、SQL SERVER 和ACCESS的数据导入导出
- JAVA Excel数据批量导入到SQL数据库
- 从Excel文件中,导入数据到SQL数据库中,很简单,直接用下面的语句:
- 【推荐】.NET(webform,MVC)使用NPOI组件将数据导出、导入Excel。 Aspose.Cell 控件报表