/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Export af DB Data
Fra : Michael Vilhelmsen


Dato : 07-05-02 11:25

Hej

Jeg har brug for at skulle eksportere nogle data fra en database til en
kommafil.

Er der nogen nem måde at gøre dette på (kombonent eller lignende).



--
Best Regards / Med venlig hilsen
___________
Michael Vilhelmsen
Microcom ApS, Denmark


 
 
Stig Johansen (07-05-2002)
Kommentar
Fra : Stig Johansen


Dato : 07-05-02 14:54

Michael Vilhelmsen wrote:

> Hej

Hej.

> Jeg har brug for at skulle eksportere nogle data fra en database til en
> kommafil.
>
> Er der nogen nem måde at gøre dette på (kombonent eller lignende).

Ja, hvis det er M$ Windows, så brug odbc - text driver via 'ADO'
komponenterne.

--
Med venlig hilsen / Best regards
Stig Johansen
stig.johansen@udvikling.it.dk
(remove dot dk)

R. A. Larsen (07-05-2002)
Kommentar
Fra : R. A. Larsen


Dato : 07-05-02 18:16

Michael Vilhelmsen <Michael.Vilhelmsen@Microcom.NoSpam.Com> wrote:
>
> Hej
>
> Jeg har brug for at skulle eksportere nogle data fra en database til en
> kommafil.
>
> Er der nogen nem måde at gøre dette på (kombonent eller lignende).

Hvilken database og hvilket programmeringssprog?

Når du taler om komponenter, antager jeg i det følgende, at du mener
Delphi.

Du kan måske bruge BatchMove. Jeg har leget med det og er kommet frem til
følgende (Delphi 5):

Lav en SCHEMA fil (se "Borland database Engine Online Reference") med
beskrivelse af felterne (dette trin kan dog udelades; se til sidst). Her
er et lille eksempel:

[testdb]
Filetype=Delimited
Delimiter="
Separator=,
Field1=Felt1,Char,100,00,00
Field2=Felt2,Float,20,02,100
Field3=Felt3,TimeStamp,30,00,120
CharSet=ascii

Put en TTable på din form. Denne skal henvise til den tabel du vil kopiere
fra. Du behøver ikke at oprette felterne i Delphi.

Put en anden TTable på din form, sæt TableType til ttASCII og sæt
TableName til det navn, filen skal have (her "testdb"). Husk at oprette en
tom fil med dette navn. Put også en TBatchMove på formen. I dit program
skriver du så:

with BatchMove1 do begin
Source := TableSrc;
Destination := TableDst;
Mode := batAppend;
Execute;
end;

Hvis du vil gøre det nemt for dig selv, kan du undlade at lave
SCHEMA-filen og sætte BatchMove1.Mode til "batCopy". Der bliver så
oprettet en standard fil, som du kan tilrette. Her er hvad BatchMove
komponenten lavede for mig:

[testdb]
Filetype=Fixed
Field1=Felt1,Char,100,00,00
Field2=Felt2,Float,20,02,100
Field3=Felt3,TimeStamp,30,00,120
CharSet=ascii

Jeg skulle så kun rette "Filetype" og sætte "Delimiter" og "Separator".

MVH, René
--
Using Virtual Access
http://www.vamail.com


Uffe Kousgaard (07-05-2002)
Kommentar
Fra : Uffe Kousgaard


Dato : 07-05-02 20:19

Denne kode gør det ønskede (uden BDE, ODBC eller andet omstændeligt
stads):

var
i,x: integer;
begin
assignfile(output,'text.txt');
rewrite(output);
table1.First;
x:= table1.fieldcount;
while not table1.Eof do
begin
for i:= 1 to x do
begin
write(output,table1.Fields[i-1].Value);
if i<x then write(output,','); // komma eller semikolon efter
behov
end;
writeln(output);
table1.next;
end;
closefile(output);
end;

Hvis du har behov for anførselstegn omkring tekster skal du checke på
typen inden udskrift. Måske vil det også stejle overfor en memo, blob
eller andre specielle datatyper.

"Michael Vilhelmsen" <Michael.Vilhelmsen@Microcom.NoSpam.Com> wrote in
message news:Xns92077E60B54B8MichaelVilhelmsenNoS@212.54.64.135...
> Hej
>
> Jeg har brug for at skulle eksportere nogle data fra en database til
en
> kommafil.
>
> Er der nogen nem måde at gøre dette på (kombonent eller lignende).
>
>
>
> --
> Best Regards / Med venlig hilsen
> ___________
> Michael Vilhelmsen
> Microcom ApS, Denmark
>


Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste