asp獲取數(shù)據(jù)庫表名、庫名、字段名的方法

字號(hào):


    asp獲取數(shù)據(jù)庫表名,字段名
    以sqlserver為例:
    代碼如下:
    < %
    set conn=server.createobject(adodb.connection)
    conn.open server=ip地址;provider=sqloledb;database=庫名稱;uid=用戶名;pwd=密碼;
    %>
    讀sqlserver庫中地表名:
    代碼如下:
    < %
    set rs=conn.openschema(20)
    while not rs.eof
    response.write(所在數(shù)據(jù)庫名: & rs(0) & <br>)
    response.write(所有者: & rs(1) & <br />)
    response.write(表 名: & rs(2) & <br />)
    response.write(表地類型: & rs(3) & <br />)
    rs.movenext
    wend
    %>
    這樣,我們知道表名了,現(xiàn)在我們?cè)賮砜纯丛趺磳?duì)表地字段進(jìn)行操作.
    假設(shè):其中數(shù)據(jù)庫中有表:[things],表中字段為:id,thingsname,thingstype
    獲取該表地所有字段名:
    代碼如下:
    < %
    dim i,j,sql
    set rs=server.createobject(“adodb.recordset”)
    sql=select * from [things] where 1<>1
    rs.open sql,conn,1,1
    j=rs.fields.count
    for i=0 to (j-1)
    response.write(第 & i+1 & 個(gè)字段名: & rs.fields(i).name & <br /><br />)
    next
    %>
    好了,現(xiàn)在我們明白了怎么獲取字段名了.
    如果大家想對(duì)獲取地字段值進(jìn)行一些操作,這也是可以地:
    比如我們想要?jiǎng)h除表[things]中字段thingstype ,就可
    以這樣寫:
    代碼如下:
    < %
    sql=alter table [things] drop column thingstype
    conn.execute sql
    %>
    又比如我們想要添加一個(gè)字段thingscolor,它地類型為varchar型,長(zhǎng)度為20,且默認(rèn)值為red,寫法如下:
    代碼如下:
    < %
    sql=alter table [things] add thingscolor varchar(20) default 'red'
    conn.execute sql
    %>
    以上對(duì)字段地基本操作都是用sql語言實(shí)現(xiàn),在asp中,通過sql語言,我們只要有足夠地權(quán)限就可以完成