VB数据库编程技术实例

上传人:飞*** 文档编号:35987656 上传时间:2018-03-23 格式:DOC 页数:25 大小:343.50KB
返回 下载 相关 举报
VB数据库编程技术实例_第1页
第1页 / 共25页
VB数据库编程技术实例_第2页
第2页 / 共25页
VB数据库编程技术实例_第3页
第3页 / 共25页
VB数据库编程技术实例_第4页
第4页 / 共25页
VB数据库编程技术实例_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《VB数据库编程技术实例》由会员分享,可在线阅读,更多相关《VB数据库编程技术实例(25页珍藏版)》请在金锄头文库上搜索。

1、VBVB 数据库编程技术数据库编程技术一一 ODBC 概述概述在传统的数据库管理系统中,每个数据库管理系统都有自己的应用程序开发接口(API),为了解决此 问题,微软公司开发了 ODBC(Open DataBase Connectivity,即开放数据库互连)。 ODBC 是一套开放数据库系统应用程序接口规范,目前它已成为一种工业标准,它提供了统一的数 据库应用编程接口(API),为应用程序提供了一套高层调用接口规范和基于动态连接库的运行支持环境提供了一套高层调用接口规范和基于动态连接库的运行支持环境。 使用 ODBC 开发数据库应用时,应用程序调用的是标准的应用程序调用的是标准的 ODBC

2、函数和函数和 SQL 语句,屏蔽了语句,屏蔽了 DBMS 之间之间 的差异,数据库底层操作由各个数据库的驱动程序完成的差异,数据库底层操作由各个数据库的驱动程序完成。因此应用程序有很好的适应性和可移植性,并 且具备了同时访问多种数据库管理系统的能力,从而彻底克服了传统数据库应用程序的缺陷。 主要任务包括:建立与数据源的连接;向数据源发送 SQL 请求;断开与数据源的连接 数据源 数据源是指任一种可以通过 ODBC 连接的数据库管理系统,它包括要访问的数据库和数据库的运行 平台。数据源名掩盖了数据库服务器或数据库文件间的差别,通过定义多个数据源,每个数据源指向一 个服务器名,就可在应用程序中实现

3、同时访问多个 DBMS 的目的。 数据源(Data Source Name,简称 DSN)是驱动程序与 DBS 连接的桥梁,数据源不是 DBS,而是用于 表达一个 ODBC 驱动程序和 DBMS 特殊连接的命名。在连接中,用数据源名来代表用户名、服务器名、 所连接的数据库名等,可以将数据源名看成是与一个具体数据库建立的连接。 数据源分为以下三类: (1)用户数据源:用户创建的数据源,称为“用户数据源”。此时只有创建者才能使用,并且只能在所 定义的机器上运行。任何用户都不能使用其他用户创建的用户数据源。(2)系统数据源:所有用户和在 Windows NT 下以服务方式运行的应用程序均可使用系统数

4、据源。 (3)文件数据源:文件数据源是 ODBC 3.0 以上版本增加的一种数据源,可用于企业用户,ODBC 驱动 程序也安装在用户的计算机上。 (与机器无关)二、二、SQL 语言基础语言基础创建表格创建表格 SQL 语言中的 create table 语句被用来建立新的数据库表格。Create table 语句的使用格式如下:create table tablename (column1 data type, column2 data type, column3 data type); 如果用户希望在建立新表格时规定列的限制条件,可以使用可选的条件选项:create table tablen

5、ame (column1 data type constraint,2column2 data type constraint, column3 data type constraint); 举例如下:create table employee (firstname varchar(15), lastname varchar(20), age number(3), address varchar(30), city varchar(20); 简单来说,创建新表格时,在关键词 create table 后面加入所要建立的表格的名称,然后在括号内顺次 设定各列的名称,数据类型,以及可选的限制条件等

6、。注意,所有的 SQL 语句在结尾处都要使用“;”符 号。 使用 SQL 语句创建的数据库表格和表格中列的名称必须以字母开头,后面可以使用字母,数字或下划线, 名称的长度不能超过 30 个字符。注意,用户在选择表格名称时不要使用 SQL 语言中的保留关键词,如 select, create, insert 等,作为表格或列的名称。 数据类型用来设定某一个具体列中数据的类型。例如,在姓名列中只能采用 varchar 或 char 的数据类型, 而不能使用 number 的数据类型。 SQL 语言中较为常用的数据类型为: char(size):固定长度字符串,其中括号中的 size 用来设定字符串

7、的最大长度。Char 类型的最大长度为 255 字节。 varchar(size):可变长度字符串,最大长度由 size 设定。 number(size):数字类型,其中数字的最大位数由 size 设定。 Date:日期类型。 number(size,d):数字类型,size 决定该数字总的最大位数,而 d 则用于设定该数字在小数点后的位数。最后,在创建新表格时需要注意的一点就是表格中列的限制条件。所谓限制条件就是当向特定列输入数 据时所必须遵守的规则。例如,unique 这一限制条件要求某一列中不能存在两个值相同的记录,所有记 录的值都必须是唯一的。除 unique 之外,较为常用的列的限制

8、条件还包括 not null 和 primary key 等。 Not null 用来规定表格中某一列的值不能为空。Primary key 则为表格中的所有记录规定了唯一的标识 符。查询查询简单的 SQL 查询只包括选择列表、FROM 子句和 WHERE 子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 完整结构: Select All/Distinct From,WhereGroup by HavingOrder by Asc/Desc Group by :按列名 1 的值进行分组,属性值相等的为一个组,如果带 Having 短句,表示只有满足指定条 件的才输出。例如,下面的语

9、句查询 testtable 表中姓名为“张三”的 nickname 字段和 email 字段。 SELECT nickname,email FROM testtable3WHERE name=张三 (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变 量和全局变量)等构成。 1、选择所有列 例如,下面语句显示 testtable 表中所有列的数据: SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: SELECT nick

10、name,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名 列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题: SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT 语句中使用 ALL 或 DISTINCT 选项来显示表中符合条件的所有行或删除其中重复的数据行,默 认 为 ALL。使用 DISTINCT 选项时,对于所有重复的数据行在 SELECT 返回的结果集合中只保留一行。 5、限制返回的行数 使用

11、TOP n PERCENT选项限制返回的数据行数,TOP n 说明返回 n 行,而 TOP n PERCENT 时,说明 n 是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: SELECT TOP 2 * FROM testtable SELECT TOP 20 PERCENT * FROM testtable (二)FROM 子句 FROM 子句指定 SELECT 语句查询及与查询相关的表或视图。在 FROM 子句中最多可指定 256 个表或视 图, 它们之间用逗号分隔。 在 FROM 子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或

12、视图。例如在 usertable 和 citytable 表中同时存在 cityid 列,在查询两个表中的 cityid 时应 使用下面语句格式加以限定: SELECT username,citytable.cityid FROM usertable,citytable WHERE usertable.cityid=citytable.cityid 在 FROM 子句中可用以下两种格式为表或视图指定别名:4表名 as 别名 表名 别名 (二) FROM 子句 FROM 子句指定 SELECT 语句查询及与查询相关的表或视图。在 FROM 子句中最多可指定 256 个表或视 图, 它们之间用逗号

13、分隔。 在 FROM 子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在 usertable 和 citytable 表中同时存在 cityid 列,在查询两个表中的 cityid 时应 使用下面语句格式加以限定: SELECT username,citytable.cityid FROM usertable,citytable WHERE usertable.cityid=citytable.cityid 在 FROM 子句中可用以下两种格式为表或视图指定别名: 表名 as 别名 表名 别名 例如上面语句可用表的别名格式表示为: SELE

14、CT username,b.cityid FROM usertable a,citytable b WHERE a.cityid=b.cityid SELECT 不仅能从表或视图中检索数据,它还能够从其它查询语句所返回的结果集合中查询数据。 例如: SELECT a.au_fname+a.au_lname FROM authors a,titleauthor ta (SELECT title_id,title FROM titles WHERE ytd_sales10000 ) AS t WHERE a.au_id=ta.au_id AND ta.title_id=t.title_id 此例中

15、,将 SELECT 返回的结果集合给予一别名 t,然后再从中检索数据。 (三) 使用 WHERE 子句设置查询条件 WHERE 子句设置查询条件,过滤掉不需要的数据行。例如下面语句查询年龄大于 20 的数据: SELECT * FROM usertable WHERE age20 WHERE 子句可包括各种条件运算符: 比较运算符(大小比较):、=、=、!、!=10 AND age”/” Then mpath=mpath+”/”Data1.DatabaseName=mpath+”Student.mdb” 连接数据库Data1.RecordSource=”基本情况” 构成记录集对象Data1.R

16、efresh 激活数据控件 End Sub 2UpdateControls 方法 UpdateControls 方法可以将数据从数据库中重新读到被数据控件绑定的控件内。因而我们可使用 UpdateControls 方法终止用户对绑定控件内数据的修改。例如:将代码 Data1.UpdateControts 放在一个命令按钮的 Click 事件中,就可以实现对记录修改的功 能。3. UpdateRecord 方法 当对绑定控件内的数据修改后,数据控件需要移动记录集的指针才能保存修改。如果使用 UpdateRecord 方法,可强制数据控件将绑定控件内的数据写入到数据库中,而不再触发 Validate 事件。 在代码中可以用该方法来确认修改。2.4 记录集的属性与方法记录集的属性与方法由 RecordSource 确定的具体可访问的数据构成的记录集 Recordset 也是一个对象,因而,它和其他对 象

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号