请教一个delphi导出excel语句的问题(100分)

  • 主题发起人 主题发起人 eelancy
  • 开始时间 开始时间
E

eelancy

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi从数据库中导出excel文件的程序中,以下一个语句
xlQuery := xlSheet.QueryTables.Add(adoRecordset,xlSheet.Range['A1']);
运行时提示参数错误,请问一下高手,我的参数有错?应该怎么改?
谢谢!
 
我试过几种方法,都是一条一条记录,一个一个字段地写进excel,效率非常低,一个56字段、3万多记录的表,竟然要导一个半钟头以上。我想找一种效率高一些的方法,不知各位高手有没有赐教?
 
如果用异构数据库的方法
只要一条SQL语音句,3万多条记录不用一分钟
 
sql server导出到excel

ADOConnection 指向excel, 用Jet4.0 ,Extended properties设为Excel 8.0
Properties="Excel 8.0;HDR=Yes;";Persist Security Info=False;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=34;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False

SELECT * into table FROM Tab1 IN [ODBC]
[ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]
 
异构数据库方法是快。但是经常会出问题。
数据完整性不能很好地保证。
苦恼!!!
 
有什么问题啊
我用的也不是很多,没有遇到什么问题
 
没有问题吗?
我头几天用就是遇到大问题了。明明是相同的字段,相同的字符结构,
结果有些正确读出来了,有些根本就读不出来。--这都是同一张表,
同一个字段耶!!!费解得要命,我最后还是选择了最笨的olevariant,
慢是慢,但数据完整,清晰,明了,可控性强!!!
如果先生有高见,可以到下面去领分啊。我正问着问题呢。

http://www.delphibbs.com/delphibbs/dispq.asp?lid=2186012
http://www.delphibbs.com/delphibbs/dispq.asp?lid=2200466
 
异构数据库的方法确实是个好方法!但是,是不是它只支持有ODBC数据源引擎的数据库?
我想在DELPHI中,把一个clientdataset的数据导出为excel,还可以用这种异构数据库的方法吗?
 
请教mpheonix兄:
 我看了半天关于异构数据库的问题,结果还是半懂不懂。
 按你上面的方法执行,结果提示说是“IN”附近有错误。

SELECT * into table FROM Tab1 IN [ODBC]
[ODBC;Driver=SQL Server;UID=sa;PWD=;Server=127.0.0.1;DataBase=Demo;]

这里面table是指EXCEL的SHEET名?



 
其实我个人认为QuickExport不错,速度也非常的快
其实嘛,可以看看Ehlib的导出功能,速度也不错(相比上面那个好象要慢些)
这两个控件都可以在 www.playicq.com 中下载
 
playicq,没有帐号。
 
后退
顶部