Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 12:25 Der er 9 kommentarer og
1 løsning

udskrive antal kolonner i tabel

Hejsa. Spørsgmålet er meget enkelt.

Hvordan får jeg udskrevet antallet af kolonner i en bestemt tabel ?

Skal bruge det i forbindelse med et loop som skal køres "antal kolonner" gange

Og kan det lade sig gøre ?
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 12:27 #1
mit spørgsmål virker måske forvirrende. prøver lige igen.

Jeg skal altså have udskrevet et tal. f.eks.

tabel1
kolonne1
kolonne2
kolonne3

skal give 3
Avatar billede nute Nybegynder
24. marts 2004 - 12:48 #2
Dim strFieldsSQL : strFieldsSQL = "select * from dintabel"
Set objFieldsRS = objConn.Execute( strFieldsSQL )
   
For each objField in objFieldsRS.Fields
    Response.write( objField.Name & "<br>" )
Next
objFieldsRS.Close
Set objFieldsRS = Nothing
Avatar billede nute Nybegynder
24. marts 2004 - 12:50 #3
dette vil skrive ud alle kolonner i din tabel. hvis du vil tælle/vise hvor mange kolonner der er, så skal du bruge:

objFieldsRS.Fields.Count

/nute
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 12:59 #4
Får den her fejl:

Microsoft VBScript runtime (0x800A01A8)
Object required: ''
/administration/brugerinfo.asp, line 36

linje 36: Set objFieldsRS = objConn.Execute(strFieldsSQL)

Det skal siges at jeg kører det op mod en MySQL db, ved ik om det har nogen indflydelse
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 13:13 #5
sådan fandt ud af det.

mit eksempel:

strFieldsSQL = "select from * tabelnavn"
set objFieldsRS = conn.execute(strFieldsSQL)

For each strFieldsSQL in objFieldsRS.Fields
  response.write(strFieldsSQL.Name & "<br>")
Next
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 13:16 #6
kan du ik lige smide et hurtigt eksempel med brug af objFieldsRS.fields.count ?
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 13:19 #7
og det behøves du ikke har også luret den.

Smid et svar så får du nogle point
Avatar billede nute Nybegynder
24. marts 2004 - 13:47 #8
du skal jo bare bruge dit eget connection object ;o] i stedet for 'objConn', så skal du bruge 'conn'

:o]
Avatar billede phineas_phreak Nybegynder
24. marts 2004 - 14:11 #9
ja det er én ting, men bemærk lige at det ikke var det eneste :)

din: For each objField in objFieldsRS.Fields

rettet: For each strFieldsSQL in objFieldsRS.Fields
Avatar billede nute Nybegynder
24. marts 2004 - 14:46 #10
jo, det var det eneste.

objField er bare et objekt der bliver oprettet i en for each ... next loop. Dette er bare en lokal variabel

Denne linie:

For each objField in objFieldsRS.Fields

kan du læse på følgende måde:

For hvert objekt i mit recordsets ('objFieldsRS') collection af felter, læg feltet ind i den variabel som jeg kalder for 'objField'

du kan kalde din variabel for 'minHestErGul' for den sagt skyld .. det har *ingenting* med din kode at gøre. hvis du derimod kører din kode med
option explicit' på, så er du nødt til at deklarere denne variabel inden, noget du gør på denne måde:

Dim objField
For each objField in objFieldsRS.Fields

/nute
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