新人求助:现在开发一套系统,需要将oracle数据库不同表里的数据,倒到一张csv文件里!求助方法,谢谢大家!
解决方案 »
- 汇编机器码操作问题
- 如何先画一条直线后然后继续从该直线的起点再画一条形成两直线构成一个夹角
- 如何开发多线程多实例的分布式应用系统???
- 求达人指教 ADOTABLE的记录指正往下和往上移动是什么写的啊
- 图像放大缩小的问题
- 如何改变tListBox中某一行的底色呀?
- 如何用SQL语句更改表名,怎么用EXEC SP-rename table1,table2,object不行,在线等
- 老大救救我吧(菜鸟)
- delphi用fastreport报表打印条码,如何改变条码颜色,或者改变条码透名度,求大神解决!
- Delphi中为什么不能用VB编的DLL?
- 一个很菜的问题
- 怎么获得某个中文字的Unicode编码?用十六进制输出.
这是一张表的,怎么修改?谢谢!
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, DBTables, ExtCtrls, DBCtrls, Grids, DBGrids, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
DataSource1: TDataSource;
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
Table1: TTable;
SaveDialog1: TSaveDialog;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
function DelStr(subStr, AStr: String): String;
var
i, iLen: integer;
begin
Result :=AStr;
i :=Pos(subStr, Result);
iLen :=Length(subStr);
while i >0 do
begin
Result :=Copy(Result, 1, i-1) +Copy(Result, i+iLen, maxInt);
i :=Pos(subStr, Result);
end;
end;
var
AList: TStringList;
i: integer;
Afile,AStr, AText: String;
begin
SaveDialog1.Execute;
Afile:=SaveDialog1.FileName;
AList :=TStringList.Create;
with DBGrid1.DataSource.DataSet, AList do
try
DisableControls; if not Active then Exit;
AStr :='';
for I :=0 to DBGrid1.Columns.Count -1 do
AStr :=AStr + DBGrid1.Columns[i].Title.Caption+',';
Add(AStr);
First;
while not Eof do
begin
AStr :='';
for i :=0 to DBGrid1.Columns.Count-1 do
begin
AText :=DBGrid1.Columns[i].Field.DisplayText;
AText :=DelStr(',', AText);
AStr :=AStr +AText +',';
end;
Add(AStr);
Next;
end;
AList.SaveToFile(AFile); finally
EnableControls;
AList.free;
end;end;end.
function DelStr(subStr, AStr: String): String;
var
i, iLen: integer;
begin
Result :=AStr;
i :=Pos(subStr, Result);
iLen :=Length(subStr);
while i >0 do
begin
Result :=Copy(Result, 1, i-1) +Copy(Result, i+iLen, maxInt);
i :=Pos(subStr, Result);
end;
end;
var
AList: TStringList;
i: integer;
Afile,AStr, AText: String;
begin
SaveDialog1.Execute;
Afile:=SaveDialog1.FileName;
AList :=TStringList.Create;
with DBGrid1.DataSource.DataSet, AList do
try
DisableControls; if not Active then Exit;
AStr :='';
for I :=0 to DBGrid1.Columns.Count -1 do
AStr :=AStr + DBGrid1.Columns[i].Title.Caption+',';
Add(AStr);
First;
while not Eof do
begin
AStr :='';
for i :=0 to DBGrid1.Columns.Count-1 do
begin
AText :=DBGrid1.Columns[i].Field.DisplayText;
AText :=DelStr(',', AText);
AStr :=AStr +AText +',';
end;
Add(AStr);
Next;
end;
with DBGrid2.DataSource.DataSet, AList do
try
DisableControls; if not Active then Exit;
AStr :='';
for I :=0 to DBGrid2.Columns.Count -1 do
AStr :=AStr + DBGrid2.Columns[i].Title.Caption+',';
Add(AStr);
First;
while not Eof do
begin
AStr :='';
for i :=0 to DBGrid1.Columns.Count-1 do
begin
AText :=DBGrid2.Columns[i].Field.DisplayText;
AText :=DelStr(',', AText);
AStr :=AStr +AText +',';
end;
Add(AStr);
Next;
end;
AList.SaveToFile(AFile); finally
EnableControls;
AList.free;
end;end;