Nu skriver jeg: ----------------------------------------------- sql = \"SELECT * FROM tabel\" set rs = conn.execute(sql)
i=0 do until rs.eof response.write rs(i).name & \"<br>\" i=i+1 loop
conn.close set conn=nothing ----------------------------------------------- ...og så får jeg en \"Item cannot be found in the collection corresponding to the requested name or ordinal\" i den linje, hvor jeg response.writer rs(i).name...?
Hvis tabellen indeholder Navn, adresse og email så betyder det at rs(0) = rs(\"Name\"),rs(1) = rs(\"adresse \") og rs(2) = rs(\"email\"). Så du skal ikke tælle op med i, blot skrive tal, da du ikke kender navnene. Men du skal vide hvor mange kolonner der er, ved du det?
Egentlig skulle det vil principielt være muligt fra en *ukendt* database at få at vide, dels hvilke tabeller, databasen indeholder (og dermed hvor mange), samt hvilke kolonner en given tabel indeholder (og dermed hvor mange.)
Det har intet ed SQL at gøre, du skal bruge dit recordsets egenskaber istedet..
SQL = \"Select top 1 * From TableName\"
Set RSViewTable = Server.CreateObject(\"ADODB.Recordset\")
RSViewTable.Open SQL, Conn, 2, 3, 1 %>
<TABLE Border=\"0\" align=\"center\"> <TR> <% \'Set up the table headings%> <% For Each columnname in RSViewTable.Fields %> <TD> <%= columnname.TYPE %> </TD> <% Next %> </TR> <%\' Write out the data %> <% Do While Not RSViewTable.EOF%> <TR> <% For Each columnname in RSViewTable.Fields%> <TD>
Hvis du vil vide hvilke tabeller der ligger i din database skal du gøre brug af OpenSchema. Følgende kode kan hjælpe dig på vej (de udmarkede linier får det til at fejle på db2 v7.1):
const adSchemaTables=20 set conn=Server.CreateObject(\"ADODB.Connection\") conn.open(\"DSN=INDSAML\")
set rs=Server.CreateObject(\"ADODB.Recordset\") set rs=conn.OpenSchema(adSchemaTables)
OK. Fint. Nu bruger jeg ovenstående kode fra zeptic, og så får jeg navnene på de forskellige tabeller i databasen ud. Så vidt, så godt.
Men når jeg så kører videre med mundis rutine, får jeg ikke navnene på kolonnerne i tabellen, jeg får den første række data fra tabellen. Hvad gør jeg galt?
Jeg lukker lige spm, jeg har ikke rigtig fået tid til at kigge på det.
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.