网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Microsoft 脚本编码器Script Enc.
.实现分页的例子-使用存储过程来实.
.正确处理ASP动态网页中的容错机制.
.ASP上两个防止SQL注入式攻击Func.
.asp+的页面指示标识.
.到亿位的金额小写转大写JS代码.
.ASP主件中的安全问题.
.学习ASP有用的代码(很有用哦!).
.asp中对ip进行过滤限制函数.
.ASP中关于帖子分页显示的基本方法.
.Flash和Asp数据库的结合应用.
.怎么样写一段高效,安全的sql查询.
.用ASP方式实现动态伸缩形式列表主.
.怎样使用ASP实现Ping.
.ASP模仿asp.net的DataGrid.
.判断Cookies是否处于开启状态.
.聊天室实现私聊(二).
.如何从Html页面中提取所有汉字.
.为Html 的Select 加一个提示语和.
.如何写出优秀的ASP应用.

ADO如何取得资料表栏位资讯(BIG5)

发表日期:2000-11-2


ADO如何取得資料表欄位資訊?

若要取得資料表欄位資訊,由以下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。
Attributes屬性也可以使用於Connection 物件,以取得資料庫連線的狀態。State屬性顯示物件的狀態:

Connection 物件的Attributes屬性:代表資料庫連線的狀態,由以下值相加,預設值為0:
&H00020000:正在呼叫CommitTrans。
&H00020000:正在呼叫RollbackTrans。
State屬性:顯示物件的狀態:
0:物件已經關閉。
1:物件已經開啟。
讓我們看一個於ASP程式碼當中使用Attributes/State屬性的例子。

譬如ASP程式碼rs17.asp如下:

<%

Set conn1 = Server.CreateObject("ADODB.Connection")

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Response.Write "<BR>conn1.Attributes: " & conn1.Attributes

Response.Write "<BR>conn1.State: " & conn1.Attributes

Set rs2 = Server.CreateObject("ADODB.Recordset")

rs2.Open "產品",conn1,1,1

For Each fld In rs2.Fields

Response.Write "<BR>" & fld.Name & "=" & hex(fld.Attributes)

Next

%>

以上的 ASP程式碼rs17.asp,於用戶端使用瀏覽器,瀏覽執行的結果,For Each fld In rs2.Fields取得所有欄位的訊息。顯示:

欄位類型為文字text欄位、日期時間date 欄位、整數int欄位、備註memo欄位,為可寫入資料(&H00000004)、可接受Null的資料值(&H00000020)、可能讀取到此欄位為Null的資料值(&H00000040)。
欄位類型為日期時間date 欄位、整數int欄位,為固定長度的資料(&H00000010)。
欄位類型為備註memo欄位,為長位元(long binary)欄位(&H00000040)。
上一篇:ADO如何使用Update语法呢?(BIG5) 人气:19002
下一篇:ADO如何建立修改刪除资料表呢?(BIG5) 人气:13769
浏览全部ADO的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐