在下面,我們將嘗試從數據庫訪問數據,而不知道列名。顯然,使用數據庫中數據的最佳方法是跟踪模式。模式是數據庫中數據的佈局。這個概念遠遠超出了該網站的範圍,但值得一提。 SQL上的大多數良好資源也將是數據庫管理上的良好資源。更好的數據庫架構會導致更好的ASP代碼。
開始:
以下是第18課的腳本。
<%@語言=“ javascript”%> <! - metadata type =“ typelib” file =“ c:/program files/common Files/common files/system/ado/msado15l” - > <html> <html> <body> <body> <%var myconnect =“ provider = microsoft.jet.jet.jet.oled.oledb.4.0; data source; data source; data source; data source; data source; data source; myConnect += server.mappath(“ //”)myConnect +=“ //globalscripts//htmlcolor.mdb;“; var connectObj = server.createobject(“ adodb.connection”) (myConnect); rs.Open(SQL,ConnectObj,andedenForwardOnly,adlockReadonly,adcmdtext); var recordcount = rs.fields.counts.counts.counts.count; var get get fieldnames = false; wress.write.write.write.write.write.write(“ <table border =/” 1/“” CellSpacing =/“” cellSpacing =/“ 0/”>/r. ifs.af(if's! recordCount){x = 0} reverts.write(“ <tr>”); if(!getFieldNames){while(x <= recordCount-1){whest.write(“ <th>” + rs.fields(x).name +“ </th>” </th>“ </th>”) recordCount-1){response.write(“ <td>” + rs.fields(x).value +“ </td>”); x ++;} response.write(“ </tr>/r”); rs.movenex; rs.Movenex;} null;%> </body> </html>單擊此處以在新窗口中運行腳本。
我認為這不需要太多解釋。
另一種方法:
實現相同目標的一種可能更優雅的方法是使用ADO方法Getrows 。它返回一個包含記錄集數據的多維數組。等待! JavaScript陣列不是詞彙(和平坦)嗎?是的。我們可以模仿多維陣列,但實際上它們很平坦。因此,除非我們做一些真正有創造力的事情,否則這是無與倫比的。
<%@語言=“ javascript”%> <! - metadata type =“ typelib” file =“ c:/program files/common Files/common files/system/ado/msado15l” - > <html> <html> <body> <body> <%var myconnect =“ provider = microsoft.jet.jet.jet.oled.oledb.4.0; data source; data source; data source; data source; data source; data source; myConnect += server.mappath(“ //”)myConnect +=“ //globalscripts//htmlcolor.mdb;“; var connectObj = server.createobject(“ adodb.connection”) (myConnect); rs.Open(SQL,ConnectObj,andyenforwardonly,adlockReadonly,adcmdText); var myarray = rs.getRows()。toarray()。 “ <br> <br>/r ")rs.movefirst(); var myvBarray = new vbarray(rs.getRows(rs.getRows())響應。 " + myVBArray.getItem(1,1) + "<BR><BR>/r")Response.Write("Now lets make something useful.<BR>/r")Response.Write("<TABLE BORDER=1 CELLPADDING=0 CELLSPACING=0>")Response.Write("/r<TR>")for (var x=0; x<=myArray.length-1; x ++){wress.write(“ <td>”+myArray [x]+“ </td>”)if(((x+1)rs.fields.counts.counts.counts.counts.counts.count == 0){response.write(“ </tr>/r>/r <tr>”)}}}}}}}}}}}}} null; connectObj.close(); connectObj = null;%> </body> </html>