Avatar billede frugaard Nybegynder
15. april 2002 - 09:59 Der er 9 kommentarer og
1 løsning

Tælle antal poster i en tabel, uden at åbne den

Hej Alle.

Er der nogen der kan fortælle min om man kan tælle antal records i en tabel, uden først at åbne den.

Hilsen
Alex
Avatar billede terry Ekspert
15. april 2002 - 10:01 #1
SELECT count(*) FROM YOURTABLE
Avatar billede frugaard Nybegynder
15. april 2002 - 10:32 #2
Hej Terry.

Jeg skal lige sige at jeg bruger en .adp database som er connected til min MS SQL server.

Jeg gør sådan nu, at jeg starter med at åbne tabellen (TABEL.open (SQL sætning)
og så læser jeg TABEL.RecordCount

Men det tager lang tid at åbne tabellen, derfor vil jeg gerne "bare" læse recordcount, uden at åbne tabellen.

Kan det lade sig gøre?
Avatar billede bennytordrup Nybegynder
15. april 2002 - 10:35 #3
Som Terry siger. Du kan evt. lave det i en stored procedure og udføre den.
Avatar billede terry Ekspert
15. april 2002 - 10:39 #4
You should be able to use something like this

Set rstEmployees = New ADODB.Recordset
  strSQL = "SELECT count(*) FROM YOURTABLE"
  rstEmployees.Open strSQL .......
Avatar billede frugaard Nybegynder
15. april 2002 - 10:47 #5
Okay, jeg kan se at bliver nødt til at afsætte nogle flere points.

Jeg håber at I kan hjælpe mig med at lave en sætning som jeg kan bruge.

Jeg har et .adp project.
Det er en connection til en SQL database.

Jeg har en tabel som hedder appoinment, og der ligger omkring 41.000 records i den. (det tal, vil jeg gerne vise i en form)

Det jeg gør i øjeblikket er som sagt:

Public CON As ADODB.Connection
Public TABEL As New Recordset

Set CON = New ADODB.Connection
CON.ConnectionString = CurrentProject.BaseConnectionString
CON.Open
TABEL.Open "SELECT appointment.* FROM appointment", CON, 1, 2
Form1!text1.value = TABEL.RecordCount

TABEL.close
CON.close

Kan I hjælpe mig med at lave en sætning som kan gøre det samme, uden at man åbner tabellen appointment?
Avatar billede frugaard Nybegynder
15. april 2002 - 11:02 #6
Okay, det lader til at det virker med select count(*), men jeg får en værdi der er 1, som ikke er tilfældet.
Jeg kan ikke lave en TABEL.movelast, da den ikke understøtter "backwards fetching".

Ved I hvad jeg kan gøre for at få det rigtige tal?
Avatar billede terry Ekspert
15. april 2002 - 11:18 #7
! "men jeg får en værdi der er 1"!

This is the SINGLE record which contains the number of records!

"SELECT count(*) AS NumberOfRecords FROM YOURTABLE"

Then the field NumberOfRecords in the recordset will contain the number of records!
Avatar billede frugaard Nybegynder
15. april 2002 - 11:24 #8
Terry, du har ret, det er bare mig der ikke så det.

Lav et svar, og du får point.

Thanx
Avatar billede terry Ekspert
15. april 2002 - 11:24 #9
15/04-2002 10:01:04
Avatar billede terry Ekspert
15. april 2002 - 11:33 #10
100 wasnt necessary, but thanks :o)
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
Computerworld tilbyder specialiserede kurser i database-management

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