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

字號:


    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)在我們再來看看怎么對表的字段進(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)在我們明白了怎么獲取字段名了。
    如果大家想對獲取的字段值進(jìn)行一些操作,這也是可以的:
    比如我們想要刪除表[Things]中字段thingsType ,就可
    以這樣寫:
    < %
    Sql="ALTER TABLE [Things] DROP COLUMN thingsType"
    Conn.execute Sql
    %>
    又比如我們想要添加一個(gè)字段thingsCOLOR,它的類型為varchar型,長度為20,且默認(rèn)值為Red,寫法如下:
    < %
    Sql="ALTER TABLE [Things] ADD thingsCOLOR VARCHAR(20) DEFAULT 'Red'"
    Conn.execute Sql
    %>
    以上對字段的基本操作都是用SQL語言實(shí)現(xiàn),在ASP中,通過SQL語言,我們只要有足夠的權(quán)限就可以完成
    更多的數(shù)據(jù)庫操作,比如用CREATE建表,用DROP刪除表等等。