au3操作Access基础教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Au3连接Access 数据库操作的基础知识
关于Access 数据库的创建与表数据的建立,请参考相关的Access 基础知识,这里只介绍Au3如何操作数据库的基础知识,希望给还没有入门的朋友们提供一些参考帮助。
数据库的使用与我们以往所使用的文本文件不同。例如我们使用文本文件,来记录各种有用的数据。那么大致有以下几步:如果数据量较大,需要进行筛选,且存放数据的源文件可能不定时变更,那么我们可以用一个临时文件来存放有用的数据,这样可大大提高程序的效率。要【格式化数据】时,我们首先要进行筛选,然后还得进行分类,这样文件中的字符串才能被转换成有用的信息来供程序使用。这样一来不用说,处理速度将大大减慢,而且就算你设计的数据格式比较科学,当数据量非常大时,文件的容量也会变的让普通计算机无法承受。
相对文本文件来说数据库的使用也大致分为以下几步:
从中可以看出,里面少了一步格式化数据,因为数据库本身在存储数据时,它就是按照一定的格式来进行存储的。Au3访问需要对数据库进行访问,首先要建立与数据库的连接,也就是第一步:【打开数据库】。这里我们通常采用ADODB ,ADODB 是Active Data Objects Data Base 的简称,它是一种PHP 存取数据库的中间函式组件。(详细的解释这里不在过多介绍)
ADODB 主要含有三种对象:Connection 、Recordset 、Command
Connection :负责打开或连接数据
Recordset :负责存取数据表
Command :负责对数据库执行动态查询命令(Au3不常用)
下面通过实例分析来具体了解一下:
目标:在脚本所在目录建立一个Access 数据库,命名为test.db ,并建立一个名称为:users 的表,写入name 和pass 两个数据列。
打开SCITE
编辑器,创建一个窗口,添加一个【创建】按钮:
声明两个常量:
输入按下【创建】按钮后的代码:
执行脚本创建一个数据库。然后来分析一下刚才的代码:
如果脚本所在目录没有发现数据库文件,则创建数据库文件,
ADOX是ADODB的对象扩展库,它的对象可用于创建、修改和删除数据库。它还包含安全对象,可用于维护用户和组,以及授予和撤销对象的权限。这里使用的对象:Catalog是用于创建包含描述数据源模式目录的集合。Create创建新的目录。“Provider=Microsoft.Jet.OLEDB.4.0”表示数据库的类型,“Data Source="&$mdb _data_path”数据库创建的路径与名称。
最后是结束创建。(ActiveConnection指示目录所属的ADO Connection对象)
用ADODB的连接打开(Connection)对象,连接到指定的数据库并打开,执行CREATE TABLE(创建新表),名称为声明变量中的名称。最后关闭本次连接。
用ADODB打开数据库,执行ALTER TABLE(修改数据库表),“ADD id identity(1,1)primary key,name char(255),pass char(255)”表示添加ID、name、pass数据列。“identity(1,1)primary key”是指此数据列为索引,“char(255)”是数据类型(建议使用text表示文本类型,使用char容易造成在没有安装Access的客户机上多出“…”的省略号,因为指定的255字节会全部被显示);Access常用的数据类型有:
1、文本:char(n)n表示文本大小
2、备注:memo
3、字节型:byte
4、长整型:long
5、整型:short
6、单精度:single
7、双精度:double
8、时间日期:time
9、货币:money或currency
10、自动编号:counter
11、是否:bit
12、OLE对象:OLEObject
13、二进制:binary
通过上面的例子,我们已经基本了解了新建数据库和新建表的方法,下面要对表进行数据操作,首先要进行数据添加:
将刚才的窗口添加输入框控件,输入按下【添加】按钮的代码:
代码分析:
检查是否有输入(所有对access数据库的添加及更新数据时候,若没有数据输入会造成程序错误,在进行数据库操作时一定要加入纠错代码);通过ADODB连接成功后,添加数据的格式为:
我们所使用的是向指定列插入数据。列名称一定要和值对应,还要注意某些类型的值在写入的时候不能带有“'or
"”,所以在插入数据的时候要注意内所要更新的值是否多加了“'or"”号。
学习了如何添加数据后,肯定是要看结果,看一下自己写入的数据记录。下面介绍Access数据库的读取与显示。将刚才的窗体修改:
添加【查看记录】代码:
代码分析:
在清空一次了ListView后开始连接数据库,连接完成后开始使用ADODB的另一个主要对象Recordset建立记录集。
SELECT有两种格式,一种是指定找某个列的数据,一个是把表内所有的数据读取。这里延伸一点Recordset.EOF 和Recordset.BOF的知识:
BOF、EOF属性
BOF指示当前记录位置位于Recordset对象的第一个记录之前;
EOF指示当前记录位置位于Recordset对象的最后一个记录之后;
BOF和EOF属性返回布尔型值。
使用BOF和EOF属性可确定Recordset对象是否包含记录,或者从一个记录移动到另一个记录时是否超出Recordset对象的限制。如果当前记录位于第一个记录之前,BOF属性将返回True(-1),如果当前记录为第一个记录或位于其后则将返回False(0)。如果当前记录位于Recordset对象的最后一个记录之后EOF属性将返回True,而当前记录为Recordset对象的最后一个记录或位于其前,则将返回False。如果BOF或EOF属性为True,则没有当前记录。
$rs.Fields(0).Value……是读取数据表中每一列第1个字段的值,它类似数组,从0开始,往后面依此类推。最后就是关闭记录集和关闭本次连接。
读取并显示数据已经实现,如果想要根据需要显示指定的数据该怎么实现呢?先来了解一下查找的相关语句。