procedure tuserdef.ExportExcelToCDS(mygrid:TdxDBGrid;filename:string);//将excel导入数据集 var i,j,row,col,ValidFNCount:integer; MyExcel:TcxSpreadSheet; str1,Prompt:string; fieldnames:string; fieldList:array of string; ColIndex:array of Integer;//Excel列序号 tmpcds:TDataSet; tmpds:TDataSource; CelValue:Variant; //搜索Excel的标题是否有对应到数据表中的字段 procedure SetFieldList; var t,t2,js:Integer; str1,str2:string; begin //搜索Excel中的有效字段 for t:=0 to col-1 do begin str1:=StringReplace(MyExcel.Sheet.getcellobject(t,0).Text,' ','',[rfReplaceAll]); for t2:=0 to mygrid.ColumnCount-1 do begin str2:=StringReplace(mygrid.Columns[t2].Caption,' ','',[rfReplaceAll]); if Pos(str1,str2)<>0 then begin ValidFNCount:=ValidFNCount+1; Break; end; end; end; SetLength(fieldList,ValidFNCount); SetLength(ColIndex,ValidFNCount); js:=0; for t:=0 to col-1 do begin str1:=StringReplace(MyExcel.Sheet.getcellobject(t,0).Text,' ','',[rfReplaceAll]); for t2:=0 to mygrid.ColumnCount-1 do begin str2:=StringReplace(mygrid.Columns[t2].Caption,' ','',[rfReplaceAll]); if Pos(str1,str2)<>0 then begin fieldList[js]:=mygrid.Columns[t2].FieldName;//字段 ColIndex[js]:=t;//Excel列序号1... js:=js+1; Break; end; end; end; end; function CheckField:string; var t:Integer; str1:string; begin for t:=0 to col-1 do begin str1:=stringreplace(MyExcel.Sheet.getcellobject(t,0).Text,' ','',[rfReplaceAll]); if Pos(str1+',',fieldnames)=0 then begin Break; end; Result:=str1; end; end; //Excel列名至少有一个与grid中的字段相对应,是否不执行数据追加操作 function CheckFieldArray:Boolean; var t,t2:integer; begin t2:=0; for t:=0 to col-1 do begin if Trim(fieldList[t])<>'' then begin t2:=1; Break; end; end; if t2=0 then Result:=true else Result:=False; end; begin tmpcds:=mygrid.DataSource.DataSet; tmpds:=mygrid.DataSource; MyExcel:=TcxSpreadSheet.Create(nil); tmpcds.DisableControls; try for i:=0 to mygrid.ColumnCount-1 do begin if mygrid.Columns[i].Visible then fieldnames:=fieldnames+stringreplace(mygrid.Columns[i].Caption,' ','',[rfReplaceAll])+','; end; str1:=CheckField; if str1<>'' then begin MessageDlg('Excel中的'+str1+'不正确',mtError,[mbOK],0); Exit; end; MyExcel.LoadFromFile(filename); row:=MyExcel.Sheet.ContentRowCount;//行数 col:=MyExcel.Sheet.ContentColCount;//列数 if row<=1 then begin Prompt:='Excel中至少有一条数据'+#13+'第一行是标题,其它行为数据行'+#13+'条件不符,操作取消'; MessageDlg(Prompt,mtWarning,[mbOK],0); Exit; end; if col<=1 then begin Prompt:='Excel中至少有一列数据'+#13+'条件不符,操作取消'; MessageDlg(Prompt,mtWarning,[mbOK],0); Exit; end; SetFieldList; if CheckFieldArray then begin Prompt:='Excel中第一行中的列名至少有一个与列表中栏位相同'+#13+'条件不符,操作取消'; MessageDlg(Prompt,mtWarning,[mbOK],0); Exit; end; mygrid.DataSource:=nil; Screen.Cursor:=crHourGlass; if not tmpcds.Active then tmpcds.Open; for i:=1 to row-1 do begin Application.ProcessMessages; tmpcds.Append; for j:=0 to ValidFNCount-1 do begin CelValue:=MyExcel.Sheet.getcellobject(ColIndex[j],i).Text; if Length(CelValue)<>0 then begin try tmpcds.FieldByName(fieldList[j]).AsVariant:=CelValue; except MessageDlg(VarToStr(CelValue),mtError,[mbOK],0); end; end; end; tmpcds.Post; end; mygrid.DataSource:=tmpds; MessageDlg('数据导入完毕',mtInformation,[mbOK],0); finally FreeAndNil(MyExcel); tmpcds.EnableControls; if mygrid.DataSource=nil then mygrid.DataSource:=tmpds; Screen.Cursor:=crDefault; end; end;
您还没有登录,请您登录后再发表评论
以往的易程序导出excel太慢了,特别是数据比较多的时候,本程序写excel模板的方法极速导入导出excel或者数据库,1万条数据不用一秒钟的时间,速度杠杠的,大家可以试试效果。本例子是用超级列表框做例子,如有需要...
本文实现在c#中可高效的将excel数据导入到sqlserver数据库中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.SqlBulkCopy 类来实现。不但速度快,...
将excel导入sql数据库中,导入的过程中先获得excel的Sheet名字,与sql数据库中的名字匹配,若数据库中存在,在插入数据,若不存在,则新建立表。速度可以达到一万条每秒中
ImportExcelData2Oracle.aspx通过oracle 的sqlloader导入,速度快。ImportData2Oracle可以选择不同的文件导入到oracle数据库,该页面还在测试中,存在一些bug,不过导入方法还是采用的sqlloader方法。本代码绝对可用,...
很多时候需要我们把Excel中的数据快速导入到Sqlserver数据库中,但是sqlserver自带的代入很麻烦,而且速度很慢,一旦电脑配置低 就得卡死,我做的这个小程序可以十分迅速的把数据导入到您想要导入的表中,很方便。
Excel导入oracle工具,对于导入数据比较方便,而且导入速度较快,不用使用写脚本方式导入到数据库
因为近期需要将excel导入到SQL Server,但是使用的是其他语言,闲来无事就尝试着用python进行导入,速度还是挺快的,1w多条数据,也只用了1s多,代码也比较简单,就不多解释了。 用到的库有xlrd(用来处理excel),...
我压箱底的 世恒原创的EXCEL快速导入导出 源码拿来修改下,原版的不能支持2007文件格式,现在可以支持2007格式了。 经过测试,速度比系统自带工作簿快了好几倍。先看下图片 导入: 数据库导出: 表格导出: 数据库...
支持Oracle,SQL Sever,Access,Excel等数据库之间数据格式批量转换:即...转换速度快,有完整的转换日志,有那个数据无法转换,可以精确定位。3.0版本支持海量数据转换(千万条以上条记录),程序对计算机内存要求不高。
② 把excel表快速插入access数据库(整个表插入,而不是一行一行插入,速度超快); ③ Datatable 快速导出 规范的 excel表; ④ 纯代码生成一个不规则的 excel表(合并列、字体加颜色等); ⑤ 复制模版,嵌入数据...
一个小程序,可以直接把excel中的数据导入到sql中,而且速度相当的快,你只需要把数据库连接字符串,excel的sheet名称改一下就好
手机号码归属地批量查询工具,数据库更新到2012.10月超过25万条数据,含移动、联通、电信所有号段,支持文本文件和EXCEL导入,可以导出EXCEL等多种格式,导出时不更改原文件信息,只是增加一列“归属地”,也可以...
22. 将Excel数据导入Access 23. 办公技巧:Excel定时提醒不误事 24. 办公小绝招 构造Excel动态图表(1) 25. 办公小绝招 构造Excel动态图表(2) 26. Excel中三表“嵌套”成一表 27. 巧用Excel建立数据库大法 28. ...
3.通过连接Excel表,将Excel表作为数据库,创建选择集,然后将选择集批量插入Excel指定位置,速度比较快 4.将数组直接插入到Excel指定位置,速度比较快,因为数组数据在内存中,对于比较复杂的判断,可以先在数组中...
方法1:将excel文件另存为csv,再导入数据库; 方法2:导入的第一步时,默认编码方式是65001(UTF-8),可以尝试选择【10008 (MAC – Simplified Chinese GB 2312)】,或者【Current Windows Codepage】,这是常见的...
Spire.XLS for .NET支持把数据从数据库导出到Excel工作表,或者把数据从Excel数据导入到数据库。 Spire.XLS for .NET 提供强大的功能为开发者设置单元格格式。这次格式化数字,文字缩进,定位调整,设置单元格边线,...
桌面数据库使用方便,速度快,质量高,对于用户来说是一款很不错的软件,小编这里推荐大家使用这款软件! 64位系统安装注意事项 1、必须以管理员身份安装。 2、如果提示找不到“C:WindowsDownloaded Installations...
支持oracle,sqlsever,access等...转换速度快,有完整的转换日志,有那个数据无法转换,可以精确定位。有其他特殊需要和问题,都可以发Email:gisoracle@126.com,定会得到答复。 绿色软件无需安装,向导式操作非常方便
数据采用单机数据库sqlite存储,速度快,安全性高,用户导入数据存在sqlite数据库中,只在用户手机上存在,不联网,各个用户之间的数据不共享,安全可靠。 本系统支持导入信息字段排序、显示隐藏、字段样式设置、...
3、excel文件的导出(用户机子上不装excel也可导出,速度快,可处理大量数据) 4、MFC控件的使用 该软件技术含量不高,界面也没美化,纯粹是本人经常忘带和弄丢点名册而设计,希望能帮助有同样需求的老师。
相关推荐
以往的易程序导出excel太慢了,特别是数据比较多的时候,本程序写excel模板的方法极速导入导出excel或者数据库,1万条数据不用一秒钟的时间,速度杠杠的,大家可以试试效果。本例子是用超级列表框做例子,如有需要...
本文实现在c#中可高效的将excel数据导入到sqlserver数据库中,很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,最好的办法是使用bcp,也就是System.Data.SqlClient.SqlBulkCopy 类来实现。不但速度快,...
将excel导入sql数据库中,导入的过程中先获得excel的Sheet名字,与sql数据库中的名字匹配,若数据库中存在,在插入数据,若不存在,则新建立表。速度可以达到一万条每秒中
ImportExcelData2Oracle.aspx通过oracle 的sqlloader导入,速度快。ImportData2Oracle可以选择不同的文件导入到oracle数据库,该页面还在测试中,存在一些bug,不过导入方法还是采用的sqlloader方法。本代码绝对可用,...
很多时候需要我们把Excel中的数据快速导入到Sqlserver数据库中,但是sqlserver自带的代入很麻烦,而且速度很慢,一旦电脑配置低 就得卡死,我做的这个小程序可以十分迅速的把数据导入到您想要导入的表中,很方便。
Excel导入oracle工具,对于导入数据比较方便,而且导入速度较快,不用使用写脚本方式导入到数据库
因为近期需要将excel导入到SQL Server,但是使用的是其他语言,闲来无事就尝试着用python进行导入,速度还是挺快的,1w多条数据,也只用了1s多,代码也比较简单,就不多解释了。 用到的库有xlrd(用来处理excel),...
我压箱底的 世恒原创的EXCEL快速导入导出 源码拿来修改下,原版的不能支持2007文件格式,现在可以支持2007格式了。 经过测试,速度比系统自带工作簿快了好几倍。先看下图片 导入: 数据库导出: 表格导出: 数据库...
支持Oracle,SQL Sever,Access,Excel等数据库之间数据格式批量转换:即...转换速度快,有完整的转换日志,有那个数据无法转换,可以精确定位。3.0版本支持海量数据转换(千万条以上条记录),程序对计算机内存要求不高。
② 把excel表快速插入access数据库(整个表插入,而不是一行一行插入,速度超快); ③ Datatable 快速导出 规范的 excel表; ④ 纯代码生成一个不规则的 excel表(合并列、字体加颜色等); ⑤ 复制模版,嵌入数据...
一个小程序,可以直接把excel中的数据导入到sql中,而且速度相当的快,你只需要把数据库连接字符串,excel的sheet名称改一下就好
手机号码归属地批量查询工具,数据库更新到2012.10月超过25万条数据,含移动、联通、电信所有号段,支持文本文件和EXCEL导入,可以导出EXCEL等多种格式,导出时不更改原文件信息,只是增加一列“归属地”,也可以...
22. 将Excel数据导入Access 23. 办公技巧:Excel定时提醒不误事 24. 办公小绝招 构造Excel动态图表(1) 25. 办公小绝招 构造Excel动态图表(2) 26. Excel中三表“嵌套”成一表 27. 巧用Excel建立数据库大法 28. ...
3.通过连接Excel表,将Excel表作为数据库,创建选择集,然后将选择集批量插入Excel指定位置,速度比较快 4.将数组直接插入到Excel指定位置,速度比较快,因为数组数据在内存中,对于比较复杂的判断,可以先在数组中...
方法1:将excel文件另存为csv,再导入数据库; 方法2:导入的第一步时,默认编码方式是65001(UTF-8),可以尝试选择【10008 (MAC – Simplified Chinese GB 2312)】,或者【Current Windows Codepage】,这是常见的...
Spire.XLS for .NET支持把数据从数据库导出到Excel工作表,或者把数据从Excel数据导入到数据库。 Spire.XLS for .NET 提供强大的功能为开发者设置单元格格式。这次格式化数字,文字缩进,定位调整,设置单元格边线,...
桌面数据库使用方便,速度快,质量高,对于用户来说是一款很不错的软件,小编这里推荐大家使用这款软件! 64位系统安装注意事项 1、必须以管理员身份安装。 2、如果提示找不到“C:WindowsDownloaded Installations...
支持oracle,sqlsever,access等...转换速度快,有完整的转换日志,有那个数据无法转换,可以精确定位。有其他特殊需要和问题,都可以发Email:gisoracle@126.com,定会得到答复。 绿色软件无需安装,向导式操作非常方便
数据采用单机数据库sqlite存储,速度快,安全性高,用户导入数据存在sqlite数据库中,只在用户手机上存在,不联网,各个用户之间的数据不共享,安全可靠。 本系统支持导入信息字段排序、显示隐藏、字段样式设置、...
3、excel文件的导出(用户机子上不装excel也可导出,速度快,可处理大量数据) 4、MFC控件的使用 该软件技术含量不高,界面也没美化,纯粹是本人经常忘带和弄丢点名册而设计,希望能帮助有同样需求的老师。