16. august 2001 - 08:30Der er
7 kommentarer og 1 løsning
Udtrækning af kolonne navne fra access database...
Hejsa :-)
Jeg mangler lidt hjælp til dette :
Hvordan får man den til at trække kolonne overskrifterne ud automatisk, og så tilføje en tekst lige efter, som den så skal tage fra databasen også?
Her er noget af den nuværende kode : strSQL = \"SELECT * FROM fabrikat INNER JOIN \" & Request.QueryString(\"varetype\") & \" ON fabrikat.fabrikatnr = \" & Request.QueryString(\"varetype\") & \".fabrikat WHERE \" & Request.QueryString(\"varetype\") & \".varenr = \'\" & Request.QueryString(\"varenrX\") & \"\' \" Set database = con.Execute(strSQL)
Som laver sql strengen og samler 2 tabeller....
Så er det meningen at den selv skal finde overskrifterne der findes i en tabel som har navn efter en variabel, som den har fået med ind, da den gik ind på siden.... disse 2 variabler, får den på forhånd i(I dette eksempel... kommer an på hvad brugeren har klikket på inden)
varetype = koeleskab varenr = kb214
Med andre ord, skal den gå ned i databasen og finde den tabel der har samme navn som variablen varetype, og derefter tage alle felter som den tabel har og skrive dem som overskrifter og uder dem, skal den så udskrive oplysningerne om det varenr, som er = den anden variabel.....
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
eEn lille ekstra forklaring : Hvordan får man ASP til at udtrække data fra en access database, når den først skal tage titlerne i en bestemt tabel og derefter de data som er i en bestemt række
jeg har variablerne, som definer hvilken tabel den skal hente data fra, og den første kolonne i tabellerne hedder altid varenr, og der er så også en variabel, som forklarer hvilket varenr, det er den skla hente data om...
så laver du et recordset med tabelnavne fra din tabel med titler. Derefter udtrækker du data i en bestemt række i en bestemt tabel med det navn fra dit recordset som du lige har åbnet.
fx
Set database = con.Execute(strSQL)
Do while not database.eof response.write \"<b>\" & database(\"varetype\") & \"</b><br>\" strSQL2 = \"SELECT * FROM \" & database(\"varetype\") Set Data = con.Execute(strSQL2) Do while not Data.eof response.write \" \" & Data(0) & \" - \" & Data(1) & \"<br>\" \' osv. alt efter hvor mange felter du har Data.movenext Loop database.movenext Loop
Jeg vil tro det er noget i den retning du søger.
Første loop gennemløber det udtræk du har hvor du får tabelnavnene ud - andet loop gennemløber data i disse tabeller.
ja, det tager så alle data fra første vare, og går så vidre til næste varer, men den skal kun tage fra 1 vare , men skal også tage kolonne overskrifterne med, og det gør den ikke her, der tager den kun hvad der står i felterne...
\'den kode du allerede har strSQL = \"SELECT * FROM fabrikat INNER JOIN \" & Request.QueryString(\"varetype\") & \" ON fabrikat.fabrikatnr = \" & Request.QueryString(\"varetype\") & \".fabrikat WHERE \" & Request.QueryString(\"varetype\") & \".varenr = \'\" & Request.QueryString(\"varenrX\") & \"\' \" Set database = con.Execute(strSQL)
\'her tæller jeg hvor mange felter der er udtrukket i recordsettet iFieldCount = database.Fields.Count
if not database.eof then \' her gennemløber jeg de felter der er udtrukket for i = 0 to iFieldCount response.write database(i).name & \": \" & database(i) & \"<br>\" next end if
Hvis du nu får for mange felter med - så skal du i stedet for SELECT * bruge SELECT fabrikat.felt1, fabrikat.felt2, \" & Request.QueryString(\"varetype\") & \".felt1, \" & Request.QueryString(\"varetype\") & \".felt2 INNER JOIN......... osv. osv.)
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.