1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <title>測試js訪問數據庫</title> 5 </head> 6 <script language="javascript" type = "text/javascript"> 7 function testdb() { 8 // 創建數據庫對象 9 var objdbConn = new ActiveXObject("ADODB.Connection"); 10 var strdsn = "Driver={SQL Server}; Server=(local); Database=Test;UID=sa;PWD=123456"; 11 // 打開數據源 12 objdbConn.Open(strdsn); 13 // 執行SQL的數據庫查詢 14 var objrs = objdbConn.Execute("SELECT * FROM Test"); 15 // 獲取字段數目 16 var fdCount = objrs.Fields.Count - 1; 17 // 檢查是否有記錄 18 if (!objrs.EOF) { 19 document.write("<table border=1><tr>"); 20 // 顯示數據庫的字段名稱 21 for (var i = 0; i <= fdCount; i++) 22 document.write("<td><b>" + objrs.Fields(i).Name + "</b></td>"); 23 document.write("</tr>"); 24 // 顯示數據庫內容 25 while (!objrs.EOF) { 26 document.write("<tr>"); 27 // 顯示每筆記錄的字段 28 for (i = 0; i <= fdCount; i++) 29 document.write("<td valign='top'>" + objrs.Fields(i).Value + "</td>"); 30 document.write("</tr>"); 31 objrs.moveNext(); // 移到下一筆記錄 32 } 33 document.write("</table>"); 34 } 35 else 36 document.write("數據庫內沒有記錄!<br>"); 37 38 objrs.Close(); // 關閉記錄集合 39 objdbConn.Close(); // 關閉數據庫鏈接 40 } 41 </script> 42 43 <body onload="InitDB()"> 44 This is my page. 45 <br> 46 <input type="button" value="submit" onclick="testdb()" /> 47 </body> 48 </html>
以上代碼可以實現JS讀取數據庫並以列表方式顯示出來。點擊button即可看到結果。
執行的SQL語句是:SELECT * FROM Test。
不過可惜的是,似乎只有IE支持(至少IE8可以),chrome和firefox不支持,會報錯:
