아래에서는 열 이름을 모르고 데이터베이스의 데이터에 액세스하려고합니다. 데이터베이스에서 데이터를 활용하는 가장 좋은 방법은 스키마를 추적하는 것입니다. 스키마는 데이터베이스의 데이터 레이아웃입니다. 이 개념은이 웹 사이트의 범위를 훨씬 뛰어 넘지 만 언급 할 가치가 있습니다. SQL의 대부분의 좋은 리소스는 데이터베이스 관리에서도 좋은 리소스가 될 것입니다. 더 나은 데이터베이스 스키마는 더 나은 ASP 코드로 이어집니다.
시작 :
아래는 레슨 18의 스크립트입니다.
<%@language = "javaScript"%> <!-메타 데이터 유형 = "typelib"file = "c :/program files/common files/system/ado/msado15.dll"-> <html> <body> <%var myconnect = "provider = microsoft.jet.oledb.4.0; data source ="; myConnect += server.mappath ( "//") myConnect += "//globalscripts//htmlcolor.mdb ;";var connectobj = server.createobject ("adodb.connection "); var rs = server.createobject ("adodb.recordset "); (myConnect); rs.open (sql, connectobj, aponforwardonly, adlockreadonly, adcmdtext); var RecordCount = rs.fields.count; var x = 0; var getfieldnames = false; response.write ( "<테이블 테두리 =/"1/"cellspacing =/">/r "; recordCount) {x = 0} response.write ( "<tr>"); if (! getfieldNames) {while (x <= recordCount-1) {response.write ( "<th>" + rs.fields (x) .name + "</th>"); x ++;} getFieldNames = true; response.write (<tr>/r> ") recordCount-1) {response.write ( "<td>" + rs.fields (x) .Value + "</td>"); x ++;} response ( "</tr>/r"); rs.movenext ();} response.write.write ( "</table>/r"); rs.close (); connectobj.close (); rs = null; null;%> </body> </html>새 창에서 스크립트를 실행하려면 여기를 클릭하십시오.
나는 이것이 많은 설명이 필요하다고 생각하지 않습니다.
다른 방법 :
이 같은 목표를 달성하는 잠재적으로 더 우아한 방법은 Ado Method Getrows를 사용하는 것입니다. 레코드 세트 데이터를 포함하는 다차원 배열을 반환합니다. 기다리다! JavaScript 배열 어휘 (및 평평한)가 아닌가? 예. 우리는 다차원 배열을 모방 할 수 있지만 실제로는 평평합니다. 그래서 그것은 우리가 정말로 창의적 인 일을하지 않는 한, 그것은 getrows 에 대한 사람이 아닙니다.
<%@language = "javaScript"%> <!-메타 데이터 유형 = "typelib"file = "c :/program files/common files/system/ado/msado15.dll"-> <html> <body> <%var myconnect = "provider = microsoft.jet.oledb.4.0; data source ="; myConnect += server.mappath ( "//") myConnect += "//globalscripts//htmlcolor.mdb ;";var connectobj = server.createobject ("adodb.connection "); var rs = server.createobject ("adodb.recordset "); (myConnect); rs.open (SQL, ConnectObj, AbonseForwardOnly, adlockreadonly, adcmdtext); var myarray = rs.getrows (). toArray (); response.write ( "myArray의 결과를 javaScript로 보자"); responce.write ( "sees womes (plant)). "<br> <br> /r")rs.movefirst();var myvbarray = new vbarray (rs.getrows ()) response.write ("우리는 <i> new vbarray </i> 생성자 및 ") 응답을 사용할 수 있습니다 .write.write.write.write.write ("<i> getitem () </i> 방법 : myvbarray (1)). ") response.write ("returns " + myvbarray.getItem (1,1) +"<br> <br> /r")response.write("now는 유용한 것을 만들 수있게 해줍니다. <br> /r")response.write("<Table Border = 1 CellPadding = 0 CellSpacing = 0> ") 응답 ("/r <tr> "); x <= myArray.length-1; ((x+1)%rs.fields.count == 0) {response.write ( "</tr>/r <tt>")}} response.write ( "</tr>/r") response.write ( "</table>") rs.close (); rs = null; connectobj.close (); connectobj = null;%> </html>