09. august 2009 - 11:00Der er
5 kommentarer og 1 løsning
RecordCount
Hej.
Jeg ønsker at finde ud af, hvor mange poster, der er i min tabel og har fndet et mystisk problem, som jeg ikke synes jeg plejer at få.
Nu er det nok en "fejl-40" og jeg vil ikke nægte, at jeg måske husker et eller andet galt i forhold til tidlgiere, ho jeg har fået det til at fungere.
Jeg har en tabel(Firebird 2.1). Jeg har 5 poster i tabellen.
Så har jeg forsøgt at oprette en ibquery med SQL "SELECT * from tabel1" og gjort den aktiv.
Jeg har følgende kode: label1.caption := inttostr(query1.recordcount);
På samme måde har jeg forsøgt med en IBSQL: label1.caption := ibsql1(query1.recordcount);
I begge tilfælde bliver resultatet 1 (et), sevom der er 5 poster i tabellen.
Så har jeg af visuelle grunde prøvet at koble en datasource på min query og en grid til min datasource.
Når grid'en er stor nok til at rumme alle 5 poster, så vises nu det rigtige antal poster. Når grid'en kun er stor nok til at vise de 4 første poster, så bliver resultatet 4
Generelt kan man ikke aflæse record-count - jeg har ikke lige erfaring med dit setup.
Grunden er at database-maskinen ikke læser alle poster, før den leverer de første, og derfor ikke kender antallet af poster. Det sker af effektivitets hensyn, men kan sommetider slåes fra og til - eller man kan skifte driver, måske.
Ikke nødvendigvis, uden as Antal er field navnet COUNT(*), sådan er det i MySQL
Synes godt om
Ny brugerNybegynder
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.