
 
 | 
| 技术资料  > ASP技术 > XML相关 : ADO如何取得数据库中表的字段信息之一 |  
ADO如何取得数据库中表的字段信息之一 March 25,2004 |  
若要取得数据库中表的字段信息,由以下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。 |  
 
 | 
  
Copyright © 2001-2008 Shenzhen Hiblue Software Team All rights reserved