第9数据库访问_第1页
第9数据库访问_第2页
第9数据库访问_第3页
第9数据库访问_第4页
第9数据库访问_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 visual basic visual basic 程序设计教程程序设计教程第第9章章 数数据据库访问库访问 visual basic 程序程序设计教设计教程程 visual basic visual basic程序设计教程程序设计教程本章内容安排本章内容安排 关系数据库及其应用关系数据库及其应用 关系数据库概述关系数据库概述 sql及其应用及其应用 利用利用ado控件访问数据库控件访问数据库 利用利用ado对象访问数据库对象访问数据库 visual basic visual basic程序设计教程程序设计教程关系数据库概述关系数据库概述 关系数据库关系数据库 数据表数据表f字段字段f记录记

2、录f主键主键 数据库操作数据库操作 投影投影 合并合并 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 sql是通用的数据库语言,几乎为所有的关系数据是通用的数据库语言,几乎为所有的关系数据库管理系统所支持。库管理系统所支持。 sql可用来编写查询或操作数据库的命令,在数据可用来编写查询或操作数据库的命令,在数据库管理系统的驱动下实施对数据库的一切访问(创库管理系统的驱动下实施对数据库的一切访问(创建、维护和查询)。建、维护和查询)。 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 对数据库

3、的操作对数据库的操作 插入记录插入记录 删除记录删除记录 修改记录修改记录 查询数据查询数据 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 对数据库的操作对数据库的操作 插入记录插入记录insert into employees (工号工号,姓名姓名,所属部门所属部门,工资工资) values(1201,吴昊吴昊,市场部市场部,3500) 删除记录删除记录 修改记录修改记录 查询数据查询数据 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 对数据库的操作对数据库的操作 插入记录插入记录 删

4、除记录删除记录delete from employees where 工号工号=1201 修改记录修改记录 查询数据查询数据 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 对数据库的操作对数据库的操作 插入记录插入记录 删除记录删除记录 修改记录修改记录update employees set 工资工资=工资工资*1.2 where 工号工号=1201 查询数据查询数据 visual basic visual basic程序设计教程程序设计教程sql 及其应用及其应用 对数据库的操作对数据库的操作 插入记录插入记录 删除记录删除记录 修改记

5、录修改记录 查询数据查询数据select 姓名姓名,所属部门所属部门,工资工资 from employees where 所属部门所属部门=市场部市场部 visual basic visual basic程序设计教程程序设计教程本章内容安排本章内容安排 关系数据库及其应用关系数据库及其应用 利用利用ado控件访问数据库控件访问数据库 ado控件控件 datagrid控件控件 ado控件的操作控件的操作 datagrid控件的操作控件的操作 利用利用ado对象访问数据库对象访问数据库 visual basic visual basic程序设计教程程序设计教程ado 技术简介技术简介 在在 vis

6、ual basic 程序中,并不能直接使用程序中,并不能直接使用 sql命令。命令。 ado 技术是访问数据库的最佳途径。技术是访问数据库的最佳途径。 microsoft 既提供了既提供了 ado 控件、也提供了没有控件、也提供了没有界面的界面的 ado 对象用于创建数据库应用程序。对象用于创建数据库应用程序。 visual basic visual basic程序设计教程程序设计教程ado 控件和控件和 datagrid 控件控件 第一个任务:把数据库中的数据表按照表格的形式第一个任务:把数据库中的数据表按照表格的形式显示在显示在form窗体中。窗体中。 完成这个任务既要使用完成这个任务既要

7、使用 ado 控件,又要使用控件,又要使用datagrid 控件。控件。 ado 控件是提供数据的数据源控件。它从数控件是提供数据的数据源控件。它从数据库中查询并返回有关数据(称为记录集)。据库中查询并返回有关数据(称为记录集)。 datagrid 控件是利用数据的绑定控件,它能控件是利用数据的绑定控件,它能使数据按表格的形式显示出来。使数据按表格的形式显示出来。 visual basic visual basic程序设计教程程序设计教程ado 控件和控件和 datagrid 控件控件 向工具箱添加向工具箱添加ado控件和控件和datagrid控件控件 从【工程】菜单里选择【组件从【工程】菜单

8、里选择【组件】,显示【组】,显示【组件对话框】;件对话框】; 在这个对话框中选择在这个对话框中选择microsoft ado data control 6.0选项;选项; 再选择再选择microsoft datagrid control 6.0选项;选项; 最后,关闭这个对话框,最后,关闭这个对话框,ado数据控件和数据控件和datagrid绑定控件即进入工具箱中。绑定控件即进入工具箱中。 visual basic visual basic程序设计教程程序设计教程ado 控件和控件和 datagrid 控件控件 设置设置 ado 数据控件,使其成为数据源。主要在属数据控件,使其成为数据源。主要

9、在属性对话框中设置以下属性:性对话框中设置以下属性: connectionstring 属性,设置为提供数据属性,设置为提供数据库信息的连接字符串。库信息的连接字符串。 recordsource 属性,设置为属性,设置为sql的的select命令或存储过程名称。同时应指定命令类型。命令或存储过程名称。同时应指定命令类型。 把把 datagrid 控件绑定到数据源控件绑定到数据源 ado 控件。主控件。主要设置其一个属性:要设置其一个属性: datasource 属性,将其设定为属性,将其设定为 ado 控件控件即可。即可。 visual basic visual basic程序设计教程程序设计

10、教程ado 控件的操作控件的操作 主要有以下主要有以下4种操作:种操作: 使记录指针移到第一条记录;使记录指针移到第一条记录; 使记录指针移到上一条记录;使记录指针移到上一条记录; 使记录指针移到下一条记录;使记录指针移到下一条记录; 使记录指针移到最后一条记录。使记录指针移到最后一条记录。 visual basic visual basic程序设计教程程序设计教程datagrid 控件的操作控件的操作 pageup键和键和pagedown键键:可在记录集中前后:可在记录集中前后翻页。翻页。 光标上、下键光标上、下键:可从一条记录移到另一条记录。使:可从一条记录移到另一条记录。使用窗口右边的垂

11、直滚动条可上下翻看记录。用窗口右边的垂直滚动条可上下翻看记录。 光标左、右键光标左、右键:可从一个字段移到另一个字段。当:可从一个字段移到另一个字段。当然也可以用鼠标直接点选某个字段(单元格)。然也可以用鼠标直接点选某个字段(单元格)。 当当鼠标鼠标定位在列分界线上并出现伸缩竖线时,按住定位在列分界线上并出现伸缩竖线时,按住鼠标左键,拖动伸缩竖线可扩大或减小列的宽度。鼠标左键,拖动伸缩竖线可扩大或减小列的宽度。 visual basic visual basic程序设计教程程序设计教程datagrid 控件的主要属性控件的主要属性 allowaddnew:设为:设为true时,当光标移到最时,

12、当光标移到最后时会添加一条新记录。后时会添加一条新记录。 allowdelete:设为:设为true时,可按键盘上的时,可按键盘上的del或或delete 键删除当前记录。键删除当前记录。 allowupdate:设为:设为true,则当移动记录指针,则当移动记录指针时,对前条记录所做的修改将会被保存。设为时,对前条记录所做的修改将会被保存。设为false,可防止修改。,可防止修改。 datasource:将其设置为某个数据源(:将其设置为某个数据源(ado数数据控件、或后面要介绍的据控件、或后面要介绍的recordset对象),即对象),即可按表格的形式显示其中的数据。可按表格的形式显示其中

13、的数据。 visual basic visual basic程序设计教程程序设计教程本章内容安排本章内容安排 关系数据库及其应用关系数据库及其应用 利用利用ado控件访问数据库控件访问数据库 利用利用ado对象访问数据库对象访问数据库 连接到数据库连接到数据库 操作数据库操作数据库 利用查询结果利用查询结果 visual basic visual basic程序设计教程程序设计教程利用利用ado对象访问数据库对象访问数据库 我们需要更灵活地控制对数据库的访问。我们需要更灵活地控制对数据库的访问。 对数据库的不同访问,其实可以共享一个数据对数据库的不同访问,其实可以共享一个数据库连接,而不需要为

14、每个查询都建立一个数据库连接,而不需要为每个查询都建立一个数据库连接。库连接。 当不需要某个查询时,相应的对象可以随时关当不需要某个查询时,相应的对象可以随时关闭并释放,不会始终占用着系统资源。闭并释放,不会始终占用着系统资源。 实际开发都要使用实际开发都要使用ado对象。当然,使用对象。当然,使用ado对对象,意味着编程人员需要编写更多的代码。象,意味着编程人员需要编写更多的代码。 visual basic visual basic程序设计教程程序设计教程利用利用ado对象访问数据库对象访问数据库ado基本的对象有三个,代表了访问数据库的三基本的对象有三个,代表了访问数据库的三个步骤:个步骤

15、:1. 连接数据库。由连接数据库。由connection对象负责。对象负责。2. 访问操作数据库。由访问操作数据库。由command对象负责。对象负责。3. 查询操作的结果,由查询操作的结果,由recordset对象表示。对象表示。 visual basic visual basic程序设计教程程序设计教程利用利用ado对象访问数据库对象访问数据库 在使用在使用 ado 对象之前,需要在自己的工程中添加对象之前,需要在自己的工程中添加对对 adodb 对象库的引用,否则,无法使用任何对象库的引用,否则,无法使用任何ado 对象。对象。 方法是:方法是: 展开菜单【工程】展开菜单【工程】【引用】

16、;【引用】; 在引用对话框中,找到并选择在引用对话框中,找到并选择“microsoft activex data objects 2.x library”。 visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库用用connection对象连接到数据库。步骤如下:对象连接到数据库。步骤如下:1. 创建创建connection对象对象2. 设置设置connectionstring属性属性3. 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库用用connection对象连接到数据

17、库。步骤如下:对象连接到数据库。步骤如下:1. 创建创建connection对象对象dim con as adodb.connectionset con=new adodb.connection2. 设置设置connectionstring属性属性3. 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库用用connection对象连接到数据库。步骤如下:对象连接到数据库。步骤如下:1. 创建创建connection对象对象2. 设置设置connectionstring属性属性con.connectionstring =

18、provider=microsoft.jet.oledb.4.0; data source=d:dbgoods.mdb3. 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库用用connection对象连接到数据库。步骤如下:对象连接到数据库。步骤如下:1. 创建创建connection对象对象2. 设置设置connectionstring属性属性con.connectionstring= provider=sqloledb; data source=(local); initial catalog=northwind;

19、 integrated security=sspi3. 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库用用connection对象连接到数据库。步骤如下:对象连接到数据库。步骤如下:1. 创建创建connection对象对象2. 设置设置connectionstring属性属性3. 调用调用open方法方法con.open visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库dim con as new adodb.connectionprivate sub form_l

20、oad() on error goto handle con.connectionstring = provider=microsoft.jet.oledb.4.0; data source=d:dbgoods.mdb con.open msgbox 连接成功连接成功 exit subhandle: msgbox 连接失败连接失败end sub visual basic visual basic程序设计教程程序设计教程连接到数据库连接到数据库 当此连接不再需要时,可以调用当此连接不再需要时,可以调用close方法将其关方法将其关闭,然后释放。闭,然后释放。 con.close关闭关闭 set

21、con=nothing释放释放 visual basic visual basic程序设计教程程序设计教程操作访问数据库操作访问数据库 ado 的的 command 对象表示对数据库的操作命对象表示对数据库的操作命令。令。 通过通过command对象,既可以进行数据库各种对对象,既可以进行数据库各种对象的定义,如建立数据表、建立各种约束等,也可象的定义,如建立数据表、建立各种约束等,也可以对数据库中的数据进行诸如添加、删除、修改及以对数据库中的数据进行诸如添加、删除、修改及查询等操作。查询等操作。 visual basic visual basic程序设计教程程序设计教程 操作数据库一般按以下

22、方式进行:操作数据库一般按以下方式进行: 创建创建command对象对象 设置设置commandtype属性属性 设置设置commandtext属性属性 调用调用execute方法方法 visual basic visual basic程序设计教程程序设计教程 操作数据库一般按以下方式进行:操作数据库一般按以下方式进行: 创建创建command对象对象dim com as new adodb.commandset com.activeconnection=con 设置设置commandtype属性属性 设置设置commandtext属性属性 调用调用execute方法方法 visual bas

23、ic visual basic程序设计教程程序设计教程 操作数据库一般按以下方式进行:操作数据库一般按以下方式进行: 创建创建command对象对象 设置设置commandtype属性属性com.commandtype = adcmdtext 设置设置commandtext属性属性 调用调用execute方法方法 visual basic visual basic程序设计教程程序设计教程 操作数据库一般按以下方式进行:操作数据库一般按以下方式进行: 创建创建command对象对象 设置设置commandtype属性属性 设置设置commandtext属性属性com.commandtext =

24、delete goods where 工工号号=1201 调用调用execute方法方法 visual basic visual basic程序设计教程程序设计教程 操作数据库一般按以下方式进行:操作数据库一般按以下方式进行: 创建创建command对象对象 设置设置commandtype属性属性 设置设置commandtext属性属性 调用调用execute方法方法com.execute visual basic visual basic程序设计教程程序设计教程利用查询结果利用查询结果 recordset 对象表示的是从数据库中查询的结果对象表示的是从数据库中查询的结果记录的集合,并支持对其

25、中的数据进行各种操记录的集合,并支持对其中的数据进行各种操作或处理。作或处理。 使用使用recordset对象的一般方式为:对象的一般方式为: 创建对象创建对象 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程利用查询结果利用查询结果 recordset 对象表示的是从数据库中查询的结果对象表示的是从数据库中查询的结果记录的集合,并支持对其中的数据进行各种操记录的集合,并支持对其中的数据进行各种操作或处理。作或处理。 使用使用recordset对象的一般方式为:对象的一般方式为: 创建对象创建对象dim rst as adodb.record

26、setset rst=new adodb.recordset 调用调用open方法方法 visual basic visual basic程序设计教程程序设计教程recordset.open rst.open source, activeconnection, cursortype, locktype, options source 可为可为command对象、对象、sql语句、表名、存储过语句、表名、存储过程名。程名。 建议使用建议使用command对象,这样就不用设置后面对象,这样就不用设置后面参数参数options。 visual basic visual basic程序设计教程程序设计

27、教程recordset.open rst.open source, activeconnection, cursortype, locktype, options activeconnection 用于指定所属的用于指定所属的 connection 对象。对象。 visual basic visual basic程序设计教程程序设计教程recordset.open rst.open source, activeconnection, cursortype, locktype, options cursortype:用于设置游标类型。:用于设置游标类型。 adopenforwardonly:仅向

28、前游标。:仅向前游标。 adopenkeyset:键集游标。只对更改敏感。:键集游标。只对更改敏感。 adopendynamic:动态游标。最敏感。:动态游标。最敏感。 adopenstatic:静态游标。不敏感。:静态游标。不敏感。 visual basic visual basic程序设计教程程序设计教程recordset.open rst.open source, activeconnection, cursortype, locktype, options locktype:用于设置锁定类型。:用于设置锁定类型。 adlockreadonly:只读。:只读。 adlockpessimi

29、stic:保守式记录锁定。:保守式记录锁定。 adlockoptimistic 开放式记录锁定。开放式记录锁定。 adlockbatchoptimistic 开放式批更新。开放式批更新。 visual basic visual basic程序设计教程程序设计教程recordset.open rst.open source, activeconnection, cursortype, locktype, options options:用于指明参数:用于指明参数source的类别。的类别。 adcmdtext:sql命令文本命令文本 adcmdtable:数据表名称:数据表名称 adcmdsto

30、redproc:存储过程名称:存储过程名称 visual basic visual basic程序设计教程程序设计教程recordset 对象对象移动记录指针移动记录指针 包括包括4个移动方法,分别是:个移动方法,分别是: movefirst:移到第一条记录:移到第一条记录 moveprevious:移到上一条记录:移到上一条记录 movenext:移到下一条记录:移到下一条记录 movelast:移到最后一条记录:移到最后一条记录 visual basic visual basic程序设计教程程序设计教程recordset 对象对象移动记录指针移动记录指针 当移动记录指针时,需要随时判断指针

31、的状态,有当移动记录指针时,需要随时判断指针的状态,有以下两个属性:以下两个属性: bof:为:为true时,表示指针在向前移动时,时,表示指针在向前移动时,超过了第一条记录的位置。超过了第一条记录的位置。 eof:为:为true时,表示指针在向后移动时,超时,表示指针在向后移动时,超过了最后一条记录的位置。过了最后一条记录的位置。 visual basic visual basic程序设计教程程序设计教程recordset 对象对象操作数据操作数据 addnew delete update updatebatch find criteria,skip, direction,start vis

32、ual basic visual basic程序设计教程程序设计教程recordset 对象对象操作数据操作数据 addnew 该方法向该方法向recordset对象中添加一条新记录,对象中添加一条新记录,并使新记录成为当前记录。并使新记录成为当前记录。 delete update updatebatch find criteria,skip, direction,start visual basic visual basic程序设计教程程序设计教程recordset 对象对象操作数据操作数据 addnew delete 该方法会删除该方法会删除recordset对象中的当前记录。对象中的当前记录。对于立即更新模式,将在数据库中立即删除。对于立即更新模式,将在数据库中立即删除。 update updatebatch find criteria,skip, direction,start visual basic visual basic程序设计教程程序设计教程recordset 对象对象操作数据操作数据 addnew delete update 把把recordset对象中已有变化的数据更新到数对象中已有变化的数据更新到数据库中。用于立即更新模式。据库中。用于立即更新模式。 updatebatch find criteria,skip, direction,start visu

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论