30. marts 2000 - 14:50 Der er 5 kommentarer og
2 løsninger

Hvor mange poster ?

Hvordan finder man fra Delphi ud af hvor mange poster der er i en tabel i en Access database.
Avatar billede blackthorne Nybegynder
30. marts 2000 - 15:10 #1
opret en TQuery
Angiv databasenavn
tilføj denne sql text

SELECT X=COUNT(*) FROM TABEL_XXX
Execute Querien
læs værdien fra fieldbyname('X').AsInteger

En anden og måske nemmere måde er at læse RecordCount på tabel/query/storedproc eller hvad du benytter. Men denne værdi er ikke altid udfyldt det afhænger af databasen
Avatar billede sjensen Nybegynder
30. marts 2000 - 17:16 #2
eller enkelt:

Brug en tquery:
query1.sql.add('select * from xxx');
query1.execute;
antal_records := query1.recordcount;

og du kan så behandle disse records med

enten:

for i := 0 to antal_records -1 do  {et eller anden}

eller

query1.first;
while not query1.eof do
begin
  {et eller andet}
  query1.next;
end;

så enkelt er det
Avatar billede sjensen Nybegynder
30. marts 2000 - 17:17 #3
NB! I mit eks. behøver du ikke varaiblen "antal_records". Du kan bruge:

for i := 0 to query1.recordcount -1 do  {et eller anden}

direkte

30. marts 2000 - 17:29 #4
Begge dele virker tilsyneladende. Nu brokker den sig ikke over SQL'en.

I stedet skriver hele tiden at jeg ikke har adgang til det åbne eller lukkede TDataset (TQuery). Jeg har altså prøvet på at kalde hhv. open og close funktionen på Query, men den brokker sig stadig. Jeg har også undersøgt Databasen var aktiveret eller ej.
Avatar billede blackthorne Nybegynder
30. marts 2000 - 17:32 #5
Prøv at sende en udtræk af din kode
Avatar billede sjensen Nybegynder
30. marts 2000 - 17:49 #6
Din TQuery skal pege på en database, enten via et alias eller med et drev/sti/navn på de aktuelle db.

Sæt tquery propertien "Database" til enten et aliasnavn (som du kan vælge fra listen og som peger på det sted din db er) eller udfyld den med f.eks. C:\minstu\mindatabase.mdb
30. marts 2000 - 18:31 #7
Tak for hjælpen begge to nu virker det.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester