25分求助,怎样把DataGrid的数据批量插入到数据表中。我要的功能是:
1.我浏览一个Excel文件后,然后把绑定到DataGrid中.(DataGrid的列是不固定的),已经实现了.
2.再把指定数据库的表绑定到DropDownList中,也实现了.
3.然后选择一个对应的用户表,然后点击导入,将DataGrid的数据批量写入指定的表中,我不知道如何处理?????
1.我浏览一个Excel文件后,然后把绑定到DataGrid中.(DataGrid的列是不固定的),已经实现了.
2.再把指定数据库的表绑定到DropDownList中,也实现了.
3.然后选择一个对应的用户表,然后点击导入,将DataGrid的数据批量写入指定的表中,我不知道如何处理?????
解决方案 »
- 求助:这条SQL语句该怎么写
- 如何获取操作成功数及失败数
- asp.net取IP的问题
- 想给服务端checkbox赋值,但没有value属性,怎么办
- urf-8,gb2312,urlencode的编码问题
- 一个简单的问题,各位大哥路过顺便看看
- Access数据库的相对路径问题!就在oleDbConnection1的ConnectionString属性里面解决问题!
- wsReport报表打印控件升级到4.5了,大家有什么意见?
- 分页的datagrid生成excel出错求教?
- HtmlEditor 的最新动向,近期会向大家提供3.1 Release版本
- {又遇到问题了} 这个 异常 什么意思
- 帮我分析一下这段代码
如果你是想把导入到DataGrid的对应的excel中的所有数据都插入到数据库的表中,那么可以如下做:
调用下面的sql语句,把表名和excel路径换成你想要的
insert into 表 select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
注意:这个时候是利用数据库将excel做为数据源,直接读取记录并插入到相应的表中第二种:
如果你想把DataGrid中的部分数据导入到数据库中,可以将这么做:
1 将excel中的数据导入到dataset中,类似代码如下:
private DataSet CreateDataSource()
{
string strConn;
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=D:\\辽阳石化用户收集信息.xls;" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [sheet1$]", strConn);
DataSet myDataSet = new DataSet();
myCommand.Fill(myDataSet);
return myDataSet;
}
2 之后你对这个dataset和DataGrid对应操作,例如我取DataGrid中第10-100条数据,就是从dataset中取10-100条数据,之后我用sqldataadepter的update(datatable dt)方法来将所有数据插入到数据库相应表中
这里要注意:
1 要想调用sqldataadepter的update(datatable dt)方法就必须有通过ado.net来获取数据库表对应的数据集合(假设为dt_1),
之后,我们上面选取的数据都要添加到这个数据集合中,之后才能调用update(datatable dt)方法。
2 这里只需给sqldataadepter的insertcommand添加语句即可这两种都能实现你的功能