第十章 与数据库的连接 一、在VB中可以访问哪些类型的数据库 1.Jet数据库:数据库有jet 引擎直接生成和操作。不仅灵活而且速度快,microsoft access数据库就是这类数据库。在VB中以mdb格式为标准数据库文件格式 2.ISAM数据库:即索引顺序访问方法(ISAM)数据库有几种不同形式。Dbase 、foxpro、text file在VB中都可以生成或操作这些数据库。 3.ODBC数据库:开放数据库连接,例如:SQL SERVER、ORACLE等到。 二、VB访问数据库有哪几种不同方法 1.数据访问控件(DATA控件) 2.数据访问对象(DAO)是一种面向对象的界面接口 3.数据库连接性引擎技术(JET) 4.开放数据库连接性标准(ODBC)
5.远程数据访问控件(RDC) 6.远程数据对象(RDO) 7.ADO控件 ADO控件是VB6.0新增功能,它在效率上更高,速度更快,它是独立于开发工具和开发语言的简单而且容易使用数据接口。 建立在ADO控件基础上数据绑定成员 ADODC、DATA GRID DATALIST DATACOMBO 三、 1.ADODC控件与数据库文件的关系 数据库文件是一种格式复杂的文件,对任何一个程序而言,如果想自行解析文件格式而存取数据库的内容,都是一件相当复杂工程。因此VB提供了ADODC控件,其功能是进行文件结构分析并根据程序将来可能操作数据库建立必要的操作接口。 例:利用adodc绑定数据库stock01.mdb数据库中股票行情表 (ch10/练习1.vbp) 1)将adodc控件添加到工具箱中(工程/部件/micrlsoft ado data control6.o) 2)设置adodc控件属性值:connectionstring 、commandtype、
persist security info false 是否保存密码 recordsource属性。 Connectionstring属性内容: “provider=microsoft.jet.oledb.3.51; persist security info=false; data source=d:\vb\mdb\stock01.mdb” 所以connectionstring属性是由以下三个参数构成: 参数 参数值 意义 provider microsoft.jet.oledb.3.51 ole db 驱动程序 persist security info false 是否保存密码 data source d:\vb\mdb\stock01.mdb 数据源(要打开数据库) commadtype(命令类型)属性 在命令类型中可选择的值:adcmdtable(数据表)、adcmdtext(指令) adcmdstoredproc(存储过程)、adcmdnuknown(未定) recordsource(记录源)属性 如果命令类型是数据表,则recordsource属性值是数据表。 如果命令类型是指令,则recordsource属性值是一个SQL语句。
例:继续上一例,在窗体上添加一个datagrid控件,将数据库中股票行情表中数据显示出来。 虽然ADODC控件具有存取数据库数据能力,但却没有提供显示数据的功能,如果想要显示数据库的内容,除了利用ADODC来读取数据之外,还要编写显示数据的程序,但更简单方法是使用datagrid 控件。 1)datasource属性 要使用datagird显示数据库内容,必须先设置好datasource属性,这个属性作用:让 datagrid控件与adodc控件产生连接关系,也是告诉 datagrid控件它的存取的是哪一个 adodc所打开数据库。接着datagird就会自动使用 adodc 的接口,将数据库的内容显示出来。 例:继续上一例,在窗体上添加一个datagrid控件,将数据库中股票行情表中数据显示出来。 添加datagrid控件:工程/部件/microsoft datagird control6.0 在窗体上设置datagrid.datasource属性值为:adodc1 在datagrid上操作: 1)浏览:可使用datagird中“向上箭头”或“向下箭头”及滚动条。
2)修改:用鼠标单击要修改的字段。如果不允许修改,则可在datagird属性中设定allowupdate属性为true。 3)浏览:除了使用datagird浏览数据表外,还可以使用adodc控件中按钮。 4)新增:将当前记录移到最后,可看到一个用“*”符号,单击符号左侧字段,就可以输入数据。如果不允许新增,则将datagird控件中allowaddnew属性设为true 5)删除:以鼠标单击数据记录左侧,选取该记录,按下delete,如果不允许删除,则将datagird控件中allowdelete属性设为true.