从oracle数据库中导出大量数据到excel中为啥自动分成了好几个excel文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从oracle数据库中导出大量数据到excel中为啥自动分成了好几个excel文件相关的知识,希望对你有一定的参考价值。
因为你的数据太大,导致一个excel无法存储完。Excel 07-2003一个工作表最多可有65536行;excel 2007及以后版本,一个工作表最多可有1048576行;可以尝试到处csv格式的文件 参考技术A 这是Excel的原因,对于.xls格式的文件,是有行数限制的,每一个Sheet页最大允许65536行数据,对于.xlsx个的文件,则限制为
2的20次方,1048576行。 参考技术B Excel 中一个Sheet页最多能放6万多行。多了就处理不了了。所以Oracle自动分成好几个Excel文件。
Delphi中导出数据到excel
我的库中有一文本型的字段为22位数字的条码,为什么导入到excel中变成了:1.23456789E+21,如何让它显示全部的22位数呢,代码如下:
var
Form1: TForm1;
implementation
$R *.dfm
procedure TForm1.FormCreate(Sender: TObject);
begin
adoquery1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='
+extractfilepath(application.exename)+'Person.mdb'+';Persist Security Info=False';
adoquery1.Open;
end;
procedure TForm1.Button1Click(Sender: TObject); //导出
var
itemp,jtemp:integer;
begin
ExcelApplication1.Connect;
ExcelApplication1.Visible[0]:=true;
ExcelWorkbook1.ConnectTo(ExcelApplication1.Workbooks.Add(EmptyParam,0));
ExcelWorksheet1.ConnectTo(ExcelApplication1.Worksheets[1] as _Worksheet);
//ExcelWorksheet1.Columns.Font.Size:=20;
//ExcelWorksheet1.Columns.Font.Color:=xlwdred;
jtemp:=1;
with AdoQuery1 do
begin
first;
while not eof do
begin
for itemp:=1 to fieldCount do
begin
ExcelWorksheet1.Cells.Item[jtemp,itemp]:=fields[itemp-1].AsString;
end;
inc(jtemp);
next;
end;
end;
end;
ExcelWorksheet1.Cells.Item[jtemp,itemp]:=''''+fields[itemp-1].AsString; 参考技术A 生成文本数据,你生成的数值,是科学计数
以上是关于从oracle数据库中导出大量数据到excel中为啥自动分成了好几个excel文件的主要内容,如果未能解决你的问题,请参考以下文章