Im Folgenden werden wir versuchen, aus einer Datenbank auf Daten zuzugreifen, ohne die Spaltennamen zu kennen. Die beste Möglichkeit, Daten in Ihrer Datenbank zu verwenden, besteht eindeutig darin, Ihr Schema im Auge zu behalten. Das Schema ist das Datenlayout in Ihrer Datenbank. Das Konzept ist weit über den Rahmen dieser Website hinaus, aber erwähnenswert. Die meisten guten Ressourcen für SQL sind auch gute Ressourcen für das Datenbankmanagement. Besseres Datenbankschema führt zu einem besseren ASP -Code.
Beginnen Sie an:
Unten ist das Skript für Lektion 18.
<%@Sprache = "JavaScript"%> <!-metadata type = "typelib" file = "c:/Programmdateien/gemeinsame Dateien/System/ado/msado15.dll"-> <html> <body> <%var myConnect = "Provider = Microsoft.Jet.Oledb.4.0; data Quelle ="; myconnect += server.mappath ("//") myconnect += "//globalscripts//htmlcolor.mdb;";var ConnectObj = Server.CreateObject (" adodb.Connection "); (MyConnect); recordCount) {x = 0} response.write ("<tr>"); if (! getFieldnames) {while (x <= recordCount-1) {response.write ("<Th>" + rs.fields (x) .Name + "</th>"); x ++;} getfieldnames = true; x = 0; recordCount-1) {response.write ("<Td>" + rs.Fields (x) .Value + "</td>"); x ++;} reaktion.write ("</tr>/r"); null;%> </body> </html>Klicken Sie hier, um das Skript in einem neuen Fenster auszuführen.
Ich denke nicht, dass dies viel erklärt werden muss. Die
Ein anderer Weg:
Eine potenziell elegantere Möglichkeit, dasselbe Ziel zu erreichen, besteht darin, die ADO -Methode GetRows zu verwenden. Es gibt ein mehrdimensionales Array zurück, das die Datensatzdaten enthält. WARTEN! Sind JavaScript -Arrays nicht lexikal (und flach)? Ja. Wir können mehrdimensionale Arrays nachahmen, aber in Wirklichkeit sind sie flach. Es ist also ein No-Go on the Getrows ... es sei denn, wir machen etwas wirklich Kreatives.
<%@Sprache = "JavaScript"%> <!-metadata type = "typelib" file = "c:/Programmdateien/gemeinsame Dateien/System/ado/msado15.dll"-> <html> <body> <%var myConnect = "Provider = Microsoft.Jet.Oledb.4.0; data Quelle ="; myconnect += server.mappath ("//") myconnect += "//globalscripts//htmlcolor.mdb;";var ConnectObj = Server.CreateObject (" adodb.Connection "); (MyConnect); flach). myvbarray.getItem (1,1) ") reaktion.write (" returns " + myvBarray.getItem (1,1) +" <br> <br> /r")Response.Write("Now lässt etwas Nützliches. (var x = 0; x <= myarray.length-1; x ++) {response.write ("<td>" + myarray [x] + "</td>") wenn ((x+1)%rs.fields.count == 0) {response.write ("</tr>/r <tr>")}} response.write ("</tr>/r").