咿思舞论坛〖软件技术〗『网站资源』 → ADO如何取得数据库中表的字段信息之一

自定义搜索

  共有287人关注过本帖树形打印

主题:ADO如何取得数据库中表的字段信息之一

帅哥哟,离线,有人找我吗?
ysw829
  1楼 个性首页 | 博客 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:22 积分:1000181 威望:1000000 精华:0 注册:2009/7/7 14:53:26
ADO如何取得数据库中表的字段信息之一  发帖心情 Post By:2009/8/21 16:02:09

若要取得数据库中表的字段信息,由以下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。 图片点击可在新窗口打开查看

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

ADO如何取得数据库中表的字段信息之一








签名