【文档说明】第9章数据库访问课件.ppt,共(54)页,704.514 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-92332.html
以下为本文档部分文字说明:
VisualBasic程序设计教程第9章数据库访问VisualBasic程序设计教程VisualBasic程序设计教程本章内容安排•关系数据库及其应用关系数据库概述SQL及其应用•利用ADO控件访问数据库•利用ADO对象访问数据库VisualBasic程
序设计教程关系数据库概述•关系数据库数据表字段记录主键数据库操作»投影»合并VisualBasic程序设计教程SQL及其应用•SQL是通用的数据库语言,几乎为所有的关系数据库管理系统所支持。
•SQL可用来编写查询或操作数据库的命令,在数据库管理系统的驱动下实施对数据库的一切访问(创建、维护和查询)。VisualBasic程序设计教程SQL及其应用•对数据库的操作插入记录删除记录修改记录查询数据VisualBasic程序设计教程SQL及其应
用•对数据库的操作插入记录insertintoEmployees(工号,姓名,所属部门,工资)values(1201,'吴昊','市场部',3500)删除记录修改记录查询数据VisualBasic程序设计教程SQL及其应用•
对数据库的操作插入记录删除记录deletefromEmployeeswhere工号=1201修改记录查询数据VisualBasic程序设计教程SQL及其应用•对数据库的操作插入记录删除记录修改记录updateEmp
loyeesset工资=工资*1.2where工号=1201查询数据VisualBasic程序设计教程SQL及其应用•对数据库的操作插入记录删除记录修改记录查询数据select姓名,所属部门,工资fromEmployeeswhere所属部门='市场部'VisualBasic程序设计教
程本章内容安排•关系数据库及其应用•利用ADO控件访问数据库ADO控件DataGrid控件ADO控件的操作DataGrid控件的操作•利用ADO对象访问数据库VisualBasic程序设计教程ADO技术简介•在VisualBasic程序
中,并不能直接使用SQL命令。•ADO技术是访问数据库的最佳途径。•Microsoft既提供了ADO控件、也提供了没有界面的ADO对象用于创建数据库应用程序。VisualBasic程序设计教程ADO控件和DataGrid控件•第一个任务:把数据库中的数据表按照表格的形式显示在
Form窗体中。•完成这个任务既要使用ADO控件,又要使用DataGrid控件。ADO控件是提供数据的数据源控件。它从数据库中查询并返回有关数据(称为记录集)。DataGrid控件是利用数据的绑定控件,它能使数据按表格的形式显示出来。Vis
ualBasic程序设计教程ADO控件和DataGrid控件•向工具箱添加ADO控件和DataGrid控件从【工程】菜单里选择【组件…】,显示【组件对话框】;在这个对话框中选择MicrosoftADODataControl6.0选项;再选择Micros
oftDataGridControl6.0选项;最后,关闭这个对话框,ADO数据控件和DataGrid绑定控件即进入工具箱中。VisualBasic程序设计教程ADO控件和DataGrid控件•设置ADO数据控件,使其
成为数据源。主要在属性对话框中设置以下属性:ConnectionString属性,设置为提供数据库信息的连接字符串。RecordSource属性,设置为SQL的select命令或存储过程名称。同时应指定命令类型。•把DataGrid控件绑定到数据源ADO控件。主要设置其一个属性:
DataSource属性,将其设定为ADO控件即可。VisualBasic程序设计教程ADO控件的操作•主要有以下4种操作:使记录指针移到第一条记录;使记录指针移到上一条记录;使记录指针移到下一条记录;使记录指针移到最后一条记录。VisualBasic程序设计教程DataGrid控件的
操作•PageUp键和PageDown键:可在记录集中前后翻页。•光标上、下键:可从一条记录移到另一条记录。使用窗口右边的垂直滚动条可上下翻看记录。•光标左、右键:可从一个字段移到另一个字段。当然也可以用鼠标直接点选某个字段(单元格)。•当鼠标定位在列分界线上并出现伸缩竖线时,按住鼠标左键,拖动
伸缩竖线可扩大或减小列的宽度。VisualBasic程序设计教程DataGrid控件的主要属性•AllowAddNew:设为True时,当光标移到最后时会添加一条新记录。•AllowDelete:设为True时,可按键盘上的Del或Delete键删除当前记录
。•AllowUpdate:设为True,则当移动记录指针时,对前条记录所做的修改将会被保存。设为False,可防止修改。•DataSource:将其设置为某个数据源(ADO数据控件、或后面要介绍的Recordset对象),即可按表格的形式显示其中的数据。Vis
ualBasic程序设计教程本章内容安排•关系数据库及其应用•利用ADO控件访问数据库•利用ADO对象访问数据库连接到数据库操作数据库利用查询结果VisualBasic程序设计教程利用ADO对象访问数据库•我们需
要更灵活地控制对数据库的访问。对数据库的不同访问,其实可以共享一个数据库连接,而不需要为每个查询都建立一个数据库连接。当不需要某个查询时,相应的对象可以随时关闭并释放,不会始终占用着系统资源。•实际开发都要使用ADO对
象。当然,使用ADO对象,意味着编程人员需要编写更多的代码。VisualBasic程序设计教程利用ADO对象访问数据库•ADO基本的对象有三个,代表了访问数据库的三个步骤:1.连接数据库。由Connection对象负责。2
.访问操作数据库。由Command对象负责。3.查询操作的结果,由Recordset对象表示。VisualBasic程序设计教程利用ADO对象访问数据库•在使用ADO对象之前,需要在自己的工程中添加对ADODB对象库的引用,否则,无法使用任何ADO对象。•方法是:展开
菜单【工程】【引用】;在引用对话框中,找到并选择“MicrosoftActiveXDataObjects2.xLibrary”。VisualBasic程序设计教程连接到数据库•用Connection对象连接到
数据库。步骤如下:1.创建Connection对象2.设置ConnectionString属性3.调用Open方法VisualBasic程序设计教程连接到数据库•用Connection对象连接到数据库。步骤如下:1.创建Connecti
on对象DimconAsADODB.ConnectionSetcon=newADODB.Connection2.设置ConnectionString属性3.调用Open方法VisualBasic程序设计教程连接到数据库•用Connection对象连接到数据库。步骤如下
:1.创建Connection对象2.设置ConnectionString属性con.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\db\Goods.mdb"3.调用Open方法VisualBasic程序设计
教程连接到数据库•用Connection对象连接到数据库。步骤如下:1.创建Connection对象2.设置ConnectionString属性con.ConnectionString="Provider=SQLOLEDB;DataSource=(local);InitialCa
talog=Northwind;IntegratedSecurity=SSPI"3.调用Open方法VisualBasic程序设计教程连接到数据库•用Connection对象连接到数据库。步骤如下:1.创建Connection
对象2.设置ConnectionString属性3.调用Open方法con.OpenVisualBasic程序设计教程连接到数据库DimconAsNewADODB.ConnectionPrivateSubForm_Load()OnErrorGoToHa
ndlecon.ConnectionString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=D:\db\Goods.mdb"con.OpenMsgBox"连接成功"ExitSubHandle:MsgBox"
连接失败"EndSubVisualBasic程序设计教程连接到数据库•当此连接不再需要时,可以调用Close方法将其关闭,然后释放。con.Close'关闭Setcon=Nothing'释放VisualBasic程序设计教程操作访
问数据库•ADO的Command对象表示对数据库的操作命令。•通过Command对象,既可以进行数据库各种对象的定义,如建立数据表、建立各种约束等,也可以对数据库中的数据进行诸如添加、删除、修改及查询等操作。VisualBasic程序设计教程•操作数据库一般按以
下方式进行:创建Command对象设置CommandType属性设置CommandText属性调用Execute方法VisualBasic程序设计教程•操作数据库一般按以下方式进行:创建Command对象DimcomA
sNewADODB.CommandSetcom.ActiveConnection=con设置CommandType属性设置CommandText属性调用Execute方法VisualBasic程序设
计教程•操作数据库一般按以下方式进行:创建Command对象设置CommandType属性com.CommandType=AdCmdText设置CommandText属性调用Execute方法VisualBasic程序设计教程•操作数据库一般按以下方式进行:创建Command对象
设置CommandType属性设置CommandText属性com.CommandText="deleteGoodswhere工号=1201"调用Execute方法VisualBasic程序设计教程•操作数据库一般按以下方式进行:创建Command对象设置Co
mmandType属性设置CommandText属性调用Execute方法com.ExecuteVisualBasic程序设计教程利用查询结果•Recordset对象表示的是从数据库中查询的结果——记录的集合,并支持对其中的数据进行各种操作或处理。•使用Recordset
对象的一般方式为:创建对象调用Open方法VisualBasic程序设计教程利用查询结果•Recordset对象表示的是从数据库中查询的结果——记录的集合,并支持对其中的数据进行各种操作或处理。•使用Recordset对象的一般方式为:创建对象DimrstAsADODB.Reco
rdsetsetrst=NewADODB.Recordset调用Open方法VisualBasic程序设计教程Recordset.Open•rst.OpenSource,ActiveConnection,CursorType,LockType,Options•Source可为Command对象
、SQL语句、表名、存储过程名。建议使用Command对象,这样就不用设置后面参数Options。VisualBasic程序设计教程Recordset.Open•rst.OpenSource,ActiveConnection,CursorType,LockType,Options•A
ctiveConnection用于指定所属的Connection对象。VisualBasic程序设计教程Recordset.Open•rst.OpenSource,ActiveConnection,CursorType,LockType,Options•CursorType:用于设
置游标类型。adOpenForwardOnly:仅向前游标。adOpenKeyset:键集游标。只对更改敏感。adOpenDynamic:动态游标。最敏感。adOpenStatic:静态游标。不敏感。VisualBasic程序设计教程Recordset.Open•rst.OpenSourc
e,ActiveConnection,CursorType,LockType,Options•LockType:用于设置锁定类型。adLockReadOnly:只读。adLockPessimistic:保守式记录锁定。adLockOptimistic
开放式记录锁定。adLockBatchOptimistic开放式批更新。VisualBasic程序设计教程Recordset.Open•rst.OpenSource,ActiveConnection,CursorType,Loc
kType,Options•Options:用于指明参数Source的类别。adCmdText:SQL命令文本adCmdTable:数据表名称adCmdStoredProc:存储过程名称VisualBasic程序设计教程Recordset对
象——移动记录指针•包括4个移动方法,分别是:MoveFirst:移到第一条记录MovePrevious:移到上一条记录MoveNext:移到下一条记录MoveLast:移到最后一条记录VisualBasic程序设计教程
Recordset对象——移动记录指针•当移动记录指针时,需要随时判断指针的状态,有以下两个属性:BOF:为True时,表示指针在向前移动时,超过了第一条记录的位置。EOF:为True时,表示指针
在向后移动时,超过了最后一条记录的位置。VisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete•Update•UpdateBatch•Findcriteria,
Skip,Direction,startVisualBasic程序设计教程Recordset对象——操作数据•AddNew该方法向Recordset对象中添加一条新记录,并使新记录成为当前记录。•Delete•Update•UpdateBatch•Findcriteria
,Skip,Direction,startVisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete该方法会删除Recordset对象中的当前记录。对于立即更新模式,将在数据库中立即删除。•Update•UpdateBatch•Findcriteria
,Skip,Direction,startVisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete•Update把Recordset对象中已有变化的数据更新到数据库中。用于立即更新模式。•UpdateBatch•Findcr
iteria,Skip,Direction,startVisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete•Update•UpdateBatch把Recordset对象中已有变化的数据更新到数据库中。用于批更新模式。•Findcr
iteria,Skip,Direction,startVisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete•Update•UpdateBatch•Findcr
iteria,Skip,Direction,start从Recordset中搜索满足指定条件的记录。如果找到,则找到的记录成为当前记录,否则指针状态为BOF或EOF(取决于搜索的方向)。Skip:跳过的记录数。VisualBasic程序设计教程Recordset对象——操作数据•AddN
ew•Delete•Update•UpdateBatch•Findcriteria,Skip,Direction,startDirection用于指定搜索的方向。•adSearchForward:从第一条向最后一条;•adSearchBackwa
rd:从最后一条向第一条。VisualBasic程序设计教程Recordset对象——操作数据•AddNew•Delete•Update•UpdateBatch•Findcriteria,Skip,Direction,startStart用于指定搜
索的基准位置。•adBookmarkCurrent:当前位置(默认)•adBookmarkFirst:第一条记录•adBookmarkLast:最后一条记录VisualBasic程序设计教程本章小结VisualBa
sic程序设计教程练习•书上本章后的编程题:1和2。VisualBasic程序设计教程GoodBye