在 ASP+Javascript+ACCESS 的小型互動網頁環境中, 常常需要讀取某資料表的欄位名稱 (例如要作為表格的標頭), 總不能打開資料庫一一去抄出來吧! 以下程式碼利用掃描資料庫的 Schema 欄位, 就可以將全部欄位名稱讀出來, 放到陣列裡面.
var conn=Server.CreateObject("ADODB.Connection"); //建立 ADODB 物件
var str="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
Server.MapPath("./db/MyDB.mdb"; //連線字串
conn.Open(str); //開啟資料庫連線
var schema=conn.OpenSchema(4); //取得 Schema 物件
var fieldnames=new Array(); //存放欄位名稱
while (!schema.EOF) {
if (schema.Fields("TABLE_NAME").Value=="users") { //比對資料表名稱
fieldnames.push(schema.Fields("Column_Name").Value); //放入陣列
}
schema.MoveNext();
}
schema=null;
Response.Write(fieldnames.join()); //顯示欄位名稱
conn.Close(); //關閉連線
conn=null;
沒有留言:
張貼留言