ASP擷取資料庫表名,欄位名
以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("所在資料庫名:" & rs(0) & "<br>")
Response.Write("所有者:" & rs(1) & "<br />")
Response.Write("表 名:" & rs(2) & "<br />")
Response.Write("表的類型:" & rs(3) & "<br />")
rs.MoveNext
Wend
%>這樣,我們知道表名了,現在我們再來看看怎麼對錶的欄位進行操作。
假設:其中資料庫中有表:[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 & "個欄位名:" & rs.Fields(i).Name & "<br /><br />")
Next
%>
好了,現在我們明白了怎麼擷取欄位名了。
如果大家想對擷取的欄位值進行一些操作,這也是可以的:
比如我們想要刪除表[Things]中欄位thingsType ,就可
以這樣寫:
< %
Sql="ALTER TABLE [Things] DROP COLUMN thingsType"
Conn.execute Sql
%>
又比如我們想要添加一個欄位thingsCOLOR,它的類型為varchar型,長度為20,且預設值為Red,寫法如下:
< %
Sql="ALTER TABLE [Things] ADD thingsCOLOR VARCHAR(20) DEFAULT 'Red'"
Conn.execute Sql
%>
以上對欄位的基本操作都是用SQL語言實現,在ASP中,通過SQL語言,我們只要有足夠的許可權就可以完成
更多的資料庫操作,比如用CREATE建表,用DROP刪除表等等。