若要取得數據庫中表的字段信息,由以下RecordSet對象的屬性可得知:
ActualSize屬性:字段的實際大小。
DefinedSize屬性:定義字段的大小。
Type屬性:字段類型,使用以下數字代表之:
文字text:200
日期時間date:135
整數int/識別碼:3
單精准度:4
雙精准度:5
備注memo:201
是否yes/no:17
Name屬性:字段名稱。
NumericScale屬性:字段小數部份的位數。
PRecision屬性:字段的整數和小數位數部份加起來的最多位數。
取得數據庫中表的字段信息例子
讓我們看一個在ASP程式碼當中使用ActualSize/DefinedSize/ Type/Name/NumericScale/Precision的例子。
譬如ASP程式碼rs2.ASP如下:
<%
Set conn1 = Server.CreateObject("ADODB.Connection")
conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft access Driver (*.mdb)};DriverId=25;FIL=MS Access;"
Set rs1 = Server.CreateObject("ADODB.Recordset")
rs1.Open "產品",conn1,1,3
Response.Write "text<BR>"
Response.Write "ActualSize: " & rs1("名稱").ActualSize & "<BR>"
Response.Write "DefinedSize: " &rs1("名稱").DefinedSize & "<BR>"
Response.Write "Type: " & rs1("名稱").Type & "<BR>"
Response.Write "Name: " & rs1("名稱").Name & "<BR>"
Response.Write "NumericScale: " & rs1("名稱").NumericScale & "<BR>"
Response.Write "Precision: " & rs1("名稱").Precision & "<p>"
Response.Write "date<BR>"
Response.Write "ActualSize: " & rs1("日期").ActualSize & "<BR>"
Response.Write "DefinedSize: " & rs1("日期").DefinedSize & "<BR>"
Response.Write "Type: " & rs1("日期").Type & "<BR>"
Response.Write "Name: " & rs1("日期").Name & "<BR>"
Response.Write "NumericScale: " & rs1("日期").NumericScale & "<BR>"
Response.Write "Precision: " & rs1("日期").Precision & "<p>"
Response.Write "int/識別碼<BR>"
Response.Write "ActualSize: " & rs1("價格").ActualSize & "<BR>"
Response.Write "DefinedSize: " & rs1("價格").DefinedSize & "<BR>"
Response.Write "Type: " & rs1("價格").Type & "<br>"
Response.Write "Name: " & rs1("價格").Name & "<BR>"
Response.Write "NumericScale: " & rs1("價格").NumericScale & "<BR>"
Response.Write "Precision: " & rs1("價格").Precision & "<p>"
Response.Write "memo<BR>"
Response.Write "ActualSize: " & rs1("備注").ActualSize & "<BR>"
Response.Write "DefinedSize: " & rs1("備注").DefinedSize & "<BR>"
Response.Write "Type: " & rs1("備注").Type & "<BR>"
Response.Write "Name: " & rs1("備注").Name & "<BR>"
Response.Write "NumericScale: " & rs1("備注").NumericScale & "<BR>"
Response.Write "Precision: " & rs1("備注").Precision & "<p>"
Response.Write "yes<BR>"
Response.Write "ActualSize: " & rs1("刪除").ActualSize & "<BR>"
Response.Write "DefinedSize: " & rs1("刪除").DefinedSize & "<BR>"
Response.Write "Type: " & rs1("刪除").Type & "<p>"
%>
以上的 ASP程式碼rs2.ASP,於用戶端使用浏覽器,浏覽執行的結果,顯示各字段的字段信息,包括字段實際大小(ActualSize)、定義的字段大小(DefinedSize)、字段類型(Type)、字段名稱(Name)、字段小數部份的位數(NumericScale)、整數和小數位數最多位數(Precision)等。
Attributes/State屬性
若要取得更詳細的數據庫中表的字段信息,譬如此字段是否包括固定長度的資料、可接受Null的資料值、是否為自動編號的識別碼等,由以下RecordSet對象的屬性可得知:
FIEld對象的Attributes屬性:代表字段的狀態,由以下值相加:
&H00000002:此字段為memo類型。
&H00000004:此字段可寫入資料。
&H00000008:不確定此字段是否可寫入資料。
&H00000010:此字段包括固定長度的資料。
&H00000020:此字段可接受Null的資料值。
&H00000040:可能讀取到此字段為Null的資料值。
&H00000080:此字段為長位元(long binary)字段,可使用AppendChunk和GetChunk方法。
&H00000100:此字段包括自動編號的識別碼。
&H00000200:此字段包括日期時間。
&H00001000:此字段使用cache。