1、 VB.NET程序设计教程程序设计教程本书目录本书目录1 110.1 10.1 数据库概述数据库概述数据库数据库 以一定的组织方式将相关的数据组织在以一定的组织方式将相关的数据组织在一起,存放在计算机外存储器,能为多个用户一起,存放在计算机外存储器,能为多个用户共享,与应用程序彼此独立的一组数据的集合。共享,与应用程序彼此独立的一组数据的集合。Visual Basic支持多种类型的数据库,如支持多种类型的数据库,如Access数据库、数据库、FoxPro数据库、数据库、Microsoft Excel、SQL Server和和Oracle等。等。本章目录本章目录 VB.NET程序设计教程程序设计
2、教程本书目录本书目录2 210.1.110.1.1关系型数据库模型 关系型数据库模型将数据用表的集合来表示。通关系型数据库模型将数据用表的集合来表示。通过建立简单表之间的关系来定义结构,而不是根过建立简单表之间的关系来定义结构,而不是根据数据的物理存储方式建立数据中的关系。不管据数据的物理存储方式建立数据中的关系。不管表在数据库文件中的物理存储方式如何,都可以表在数据库文件中的物理存储方式如何,都可以把它看作一组行和列。把它看作一组行和列。数据库表本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3 3关系型数据库关系型数据库 表是有关信息的逻辑组,行被称为记录,列则被称表
3、是有关信息的逻辑组,行被称为记录,列则被称为字段。为字段。主键主键记录记录字段字段本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录4 410.1.2 使用使用SQL查询数据库查询数据库结构化查询语言结构化查询语言(Structure Query Language,SQLSQL)是操作关系数据库的标准语言。通过是操作关系数据库的标准语言。通过SQL命令,可以从数据库的多个表中获取数据,也可命令,可以从数据库的多个表中获取数据,也可对数据进行更新操作。对数据进行更新操作。SQL的主要语句:的主要语句:语语 句句.分类分类描描 述述SELECT数据查询数据查询查找满足特定条件的
4、记录查找满足特定条件的记录DELETE数据操作数据操作从数据表中删除记录从数据表中删除记录INSERT数据操作数据操作向表中插入一条记录向表中插入一条记录UPDATE数据操作数据操作用来改变特定记录和字段的值用来改变特定记录和字段的值本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录5 5SELECTSELECT语句语句 SELECT语句的基本语法形式语句的基本语法形式 SELECT SELECT 目标表达式列表目标表达式列表 FROM FROM 表名表名 WHERE WHERE 查询条件查询条件 GROUP BY GROUP BY 分组字段分组字段 HAVING HAVI
5、NG 分组条件分组条件 ORDER BY ORDER BY 排序关键字段排序关键字段 ASC|DESCASC|DESC 它包含它包含4部分,其中部分,其中SELECT和和FROM子句是子句是必须的必须的,通,通过使用过使用SELECT语句返回一个记录集。语句返回一个记录集。 例例 在学生基本情况表中查询物理系的学生情况:在学生基本情况表中查询物理系的学生情况:SELECT SELECT * * FROM FROM 基本情况基本情况 WHEREWHERE专业专业= = 物理物理 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录6 6SELECTSELECT语句语句- -输出
6、表达式输出表达式目标表达式为查询结果要显示的字段清单目标表达式为查询结果要显示的字段清单(字段字段间用逗号分开间用逗号分开)。数据的显示顺序由字段清单的。数据的显示顺序由字段清单的顺序决定。顺序决定。 可用星号可用星号*代表所有字段;代表所有字段; 可用可用AS短语指定字段别名;短语指定字段别名; 可通过构造表达式对原始数据进行复杂的运算可通过构造表达式对原始数据进行复杂的运算处理,产生查询结果。处理,产生查询结果。例如,例如,根据出生年月计算每个学生的年龄根据出生年月计算每个学生的年龄SELECT 姓名姓名, (Year(Date()-Year(出生年月出生年月) AS 年龄年龄 FROM
7、基本情况基本情况 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录7 7SELECTSELECT语句语句- -查询条件查询条件WHEREWHERE子句用于限制记录的选择子句用于限制记录的选择例如例如,查询,查询1985-01-01到到1986-12-31之间出生的学生:之间出生的学生:SELECT * FROM 基本情况基本情况 WHERE 出生年月出生年月 BETWEEN #1985-01-01# AND #1986-12-31#要枚举出若干项进行查询,使用运算符要枚举出若干项进行查询,使用运算符IN例如例如,查询物理系和数学系的学生数据:,查询物理系和数学系的学生数据
8、:SELECT * FROM 基本情况基本情况 WHERE 专业专业 IN (物理物理, 数学数学) 等价于:等价于:SELECT * FROM 基本情况基本情况 WHERE专业专业= 物理物理 OR 专业专业 = 数学数学 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录8 8SELECTSELECT语句语句- -合计函数合计函数合计函数用于对记录集进行统计合计函数用于对记录集进行统计返回指定字段中的最小值返回指定字段中的最小值MINMIN返回指定字段中的最大值返回指定字段中的最大值MAXMAX返回特定字段中所有值的总和返回特定字段中所有值的总和SUMSUM返回选定记录
9、的个数返回选定记录的个数COUNTCOUNT获得特定字段中的值的平均数获得特定字段中的值的平均数AVGAVG描描 述述合计函数合计函数例如,统计物理系学生的人数:例如,统计物理系学生的人数:SELECT COUNT(*) AS 学生人数学生人数 FROM 基本情况基本情况 WHERE专业专业= “物理物理”COUNT(COUNT(* *) ) 在统计时包含值为空值的记录在统计时包含值为空值的记录COUNT(COUNT(表达式表达式) ) 统计时忽略表达式值为空值的记录统计时忽略表达式值为空值的记录本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录9 9SELECTSELEC
10、T语句语句- -分组分组GROUP BY子句将指定字段列表中有相同值的子句将指定字段列表中有相同值的记录合并成一条记录。记录合并成一条记录。例如,例如,计算每个学生各门课程平均分:计算每个学生各门课程平均分:SELECT 学号学号, AVG(成绩成绩) AS 平均分平均分FROM 成绩表成绩表 GROUP BY 学号学号要对分组后的数据进行过滤,可在要对分组后的数据进行过滤,可在GROUP BY子句后结合子句后结合HAVING子句在分组中选择。子句在分组中选择。例如,例如,查询平均分在查询平均分在8080分以上的学生:分以上的学生:SELECT 学号学号, AVG(成绩成绩) AS 平均分平均
11、分FROM 成绩表成绩表 GROUP BY 学号学号HAVING AVG(成绩成绩)=80 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1010SELECTSELECT语句语句- -排序排序ORDER BY子句决定了查询结果的排列顺序子句决定了查询结果的排列顺序在在ORDER BY子句中,可以指定一个或多个字子句中,可以指定一个或多个字段作为排序关键字,段作为排序关键字,ASC选项代表升序,选项代表升序,DESC代表降序。代表降序。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1111SELECTSELECT语句图解语句图解本章目录本章目录 V
12、B.NET程序设计教程程序设计教程本书目录本书目录1212SELECTSELECT语句语句- -多表连接多表连接若查询的数据分布在多个表中,则必须建立连接若查询的数据分布在多个表中,则必须建立连接查询:查询:SELECT目标表达式列表目标表达式列表 FROM 表表1, 表表2 WHERE 表表1.字段字段 = 表表2.字段字段例如,学生成绩表中只有学号,如何在查看学生例如,学生成绩表中只有学号,如何在查看学生成绩的同时能够直观地看到学生姓名?这就要在成绩的同时能够直观地看到学生姓名?这就要在两表之间建立连接。两表之间建立连接。SQL语句如下:语句如下:SELECT基本情况基本情况.姓名姓名,
13、成绩表成绩表.* FROM 基本情基本情况况, 成绩表成绩表 WHERE成绩表成绩表.学号学号=基本情况基本情况.学号学号 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录131310.2 VB数据库访问数据库访问 10.2.1 ADOADO数据控件使用基础数据控件使用基础 数据库应用程序引例数据库应用程序引例例例10.1 设计一个窗体,用设计一个窗体,用DataGrid控件显示控件显示Student.mdb数据库中数据库中“基本情况基本情况”表的内表的内容。容。 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1414ADO数据控件使用数据控件使用
14、 VB采用采用ADO(ActiveX Data Objects)数据访问数据访问技术,编写本程序,需要完成以下工作:技术,编写本程序,需要完成以下工作: 在窗体上添加在窗体上添加ADOADO数据控件数据控件 使用使用ADOADO连接对象建立与数据提供者之间的连接连接对象建立与数据提供者之间的连接 使用使用ADOADO命令对象操作数据源,从数据源中产生命令对象操作数据源,从数据源中产生记录集并存放在内存中记录集并存放在内存中 建立记录集与数据绑定控件的关联,在窗体上显建立记录集与数据绑定控件的关联,在窗体上显示数据。示数据。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1
15、515数据源连接设置操作数据源连接设置操作 右单击右单击ADO控控件,选择快捷件,选择快捷菜单菜单ADODC属性属性命令,打命令,打开开ADO控件属控件属性页窗性页窗单击连接数据源连接数据源的方式的方式本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1616选择提供程序选择提供程序选择提供程序选择提供程序 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1717指定访问的数据库指定访问的数据库指定要访问的指定要访问的数据库文件数据库文件 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1818连接对象重要属性连接对象重要属性连接
16、对象最重要的属性是连接对象最重要的属性是ConnectionString,它是,它是一个字符串,包含了用于与数据源建立连接的相一个字符串,包含了用于与数据源建立连接的相关信息。典型的关信息。典型的 ConnectionString 属性值如下:属性值如下:Provider = Microsoft.Jet.OLEDB.4.0; Provider = Microsoft.Jet.OLEDB.4.0; Data Source = Student.mdbData Source = Student.mdbProvide,指定连接提供程序的名称;,指定连接提供程序的名称;Data Source,用于指定要
17、连接的数据源文件。,用于指定要连接的数据源文件。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录1919 VBVB数据库访问过程数据库访问过程 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录2020 数据访问过程数据访问过程 应用程序通过连接对象与数据源建立连接应用程序通过连接对象与数据源建立连接( (不不同类型的数据库使用各自的连接提供程序同类型的数据库使用各自的连接提供程序) ) 命令对象发出命令对象发出SQL命令从数据源中获取数据命令从数据源中获取数据 数据集对象用来保存所查询到的数据记录数据集对象用来保存所查询到的数据记录 应用程序对记录集
18、进行操作应用程序对记录集进行操作 记录集表示内存中来自基本表或命令执行结记录集表示内存中来自基本表或命令执行结果的集合,也由记录果的集合,也由记录( (行行) )和字段和字段( (列列) )构成,可以构成,可以把它当作一个数据表来进行操作把它当作一个数据表来进行操作 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录212110.2.2 数据绑定数据绑定 什么是数据绑定?什么是数据绑定?数据绑定是一个过程,即在运行时自动为与记录数据绑定是一个过程,即在运行时自动为与记录集中的元素关联的控件设置属性。以便通过控件集中的元素关联的控件设置属性。以便通过控件显示数据集中的数据。显
19、示数据集中的数据。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录2222数据绑定数据绑定 Windows 窗体有简单数据绑定和复杂数据绑定窗体有简单数据绑定和复杂数据绑定简单数据绑定简单数据绑定简单数据绑定就是将控件绑定到单个数据字段。简单数据绑定就是将控件绑定到单个数据字段。每个控件仅显示数据集中的一个字段值。最常用每个控件仅显示数据集中的一个字段值。最常用的简单数据绑定是将数据绑定到文本框和标签。的简单数据绑定是将数据绑定到文本框和标签。在设计或运行时设置控件属性建立绑定在设计或运行时设置控件属性建立绑定: :DataSourceDataSource:指定:指定AD
20、OADO数据控件数据控件DataFieldDataField:设置记录集中有效的字段:设置记录集中有效的字段 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录2323简单数据绑定简单数据绑定 例例10.2 数据绑定的操作过程数据绑定的操作过程 界面设计界面设计 建立连接和产生记录集建立连接和产生记录集 设置设置绑定属性绑定属性 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录2424复杂数据绑定复杂数据绑定 复杂数据绑定允许将多个数据字段绑定到一个控复杂数据绑定允许将多个数据字段绑定到一个控件,同时显示记录源中的多行或多列。件,同时显示记录源中的多行
21、或多列。支持复杂数据绑定的常用控件:支持复杂数据绑定的常用控件:n DataGrid DataGrid 数据网格数据网格n MSHFlexGrid MSHFlexGrid 数据网格数据网格n DataList DataList 数据列表框数据列表框n DataCombo DataCombo 数据组合框数据组合框本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录2525复杂数据绑定复杂数据绑定 例例10.3复杂数据绑定的操作过程复杂数据绑定的操作过程 界面设计界面设计 建立连接和产生记录集建立连接和产生记录集 数据绑定数据绑定 本例本例DataGrid控件要绑定不同的控件要绑
22、定不同的表,故需要通过表,故需要通过代码代码设置控件的设置控件的DataSource 属性。属性。 程序代码程序代码 Private Sub Command1_Click() Adodc1.RecordSource = Adodc1.RecordSource = 基本情况基本情况 Adodc1.Refresh Adodc1.RefreshEnd SubPrivate Sub Command2_Click() Adodc1.RecordSource = Adodc1.RecordSource = 成绩表成绩表 Adodc1.Refresh Adodc1.RefreshEnd Sub本章目录本章目
23、录 VB.NET程序设计教程程序设计教程本书目录本书目录2626复杂数据绑定复杂数据绑定 例例10.4使用使用SQL语句选择数据表部分数据构成记语句选择数据表部分数据构成记录集。在网格上绑定部分字段,需要对数据网格录集。在网格上绑定部分字段,需要对数据网格布局进行编辑。布局进行编辑。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录272710.3 10.3 记录集对象记录集对象10.3.1 浏览记录集浏览记录集1. AbsoloutPostionAbsoloutPostion属性属性返回当前记录指针值,从返回当前记录指针值,从1到到Recordset对象所对象所含记录数。
24、含记录数。2. BOFBOF和和EOFEOF的属性的属性BOF判定记录指针是否在首记录之前,判定记录指针是否在首记录之前,EOF判定记录指针是否在末记录之后。判定记录指针是否在末记录之后。如果如果BOF和和EOF的属性值都为的属性值都为True,则记录,则记录集为空。集为空。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录28283. RecordCountRecordCount属性属性对对Recordset对象中的记录计数,该属性为只对象中的记录计数,该属性为只读属性。读属性。4. FindFind方法方法在在Recordset对象中查找与指定条件相符的一对象中查找与指
25、定条件相符的一条记录,并使之成为当前记录。如果找不到,条记录,并使之成为当前记录。如果找不到,则记录指针指在记录集末尾。则记录指针指在记录集末尾。Recordset.Find Recordset.Find 搜索条件搜索条件 ,位移位移 , 搜索搜索方向方向, 开始位置开始位置本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录29295. MoveMove方法组方法组Move方法可代替对数据控件对象的方法可代替对数据控件对象的4个箭头按个箭头按钮的操作遍历整个记录集。钮的操作遍历整个记录集。(1) MoveFirst方法移至第方法移至第1条记录。条记录。(2) MoveLas
26、t方法移至最后一条记录。方法移至最后一条记录。(3) MoveNext方法移至下一条记录。方法移至下一条记录。(4) MovePrevious方法移至上一条记录。方法移至上一条记录。(5) Move n 方法向前或向后移方法向前或向后移n条记录。条记录。例例10.5用命令按钮代替数据控件对象的用命令按钮代替数据控件对象的4个箭个箭头按钮的功能头按钮的功能, ,使用使用Find方法查找记录方法查找记录本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3030MoveNext MoveLastMoveFirstMovePreviousAdodc1.Recordset. Find
27、 学号学号= 500011 计算机计算机丁保华丁保华500011物理李明 500201数学庄前500102专业姓名学号EOFBOF记录集属性方法小结记录集属性方法小结本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录313110.3.2 10.3.2 记录集的编辑记录集的编辑 1 1数据编辑方法数据编辑方法 记录集中数据的增、删、改涉及到记录集中数据的增、删、改涉及到4 4个方法:个方法:nAddNewAddNew方法方法 在记录集中增加入一个新行在记录集中增加入一个新行nDeleteDelete方法方法 删除记录集中的当前记录删除记录集中的当前记录nUpdateUpdat
28、e方法方法 确定修改并保存到数据源中确定修改并保存到数据源中nCancelUpdateCancelUpdate方法方法 取消未调用取消未调用Update方方法前对记录所做的所有修改法前对记录所做的所有修改 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3232增加新记录增加新记录 2增加新记录增加新记录(1) 调用调用AddNewAddNew方法增加一条空记录方法增加一条空记录(2) 给新记录各字段赋值给新记录各字段赋值(可以通过绑定控件直可以通过绑定控件直接输入,或使用程序代码给字段赋值,格式为:接输入,或使用程序代码给字段赋值,格式为:Recordset.Field
29、sRecordset.Fields(字段名字段名) = 值值(3) 调用调用UpdateUpdate方法,确定所做的添加,将方法,确定所做的添加,将缓冲区内的数据写入数据库缓冲区内的数据写入数据库 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3333删除记录删除记录 3. 删除记录删除记录(1) 定位被删除的记录使之成为当前记录定位被删除的记录使之成为当前记录(2) 调用调用DeleteDelete方法方法(3) 移动记录指针移动记录指针注意:使用注意:使用DeleteDelete方法当前记录立即删除,不方法当前记录立即删除,不加任何的警告或者提示。删除一条记录后,绑
30、加任何的警告或者提示。删除一条记录后,绑定控件仍旧显示该记录的内容。因此,必须移定控件仍旧显示该记录的内容。因此,必须移动记录指针刷新绑定控件。动记录指针刷新绑定控件。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3434修改修改记录记录 4.修改记录修改记录当改变数据项的的内容时,当改变数据项的的内容时,ADO自动进入编自动进入编辑状态,在对数据编辑后,只要改变记录集的辑状态,在对数据编辑后,只要改变记录集的指针或调用指针或调用UpdateUpdate方法,即可确定所做的修方法,即可确定所做的修改。改。例例11.6在例在例10.5的基础上加入的基础上加入“新增新增”、
31、“删删除除”、“更新更新”、“放弃放弃”和和“结束结束”5个按个按钮,通过对按钮的编程建立增、删、改功能钮,通过对按钮的编程建立增、删、改功能 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3535计算机计算机丁保华丁保华500011物理李明 500201数学庄前500102专业姓名学号Adodc1.Recordset. AddNew 增加记录增加记录数据库UpData填入新数据填入新数据 编辑记录编辑记录删除记录删除记录 给各字段赋值给各字段赋值 调用调用Delete方法方法 调用调用Update方法方法 移动记录指针移动记录指针 计算机计算机丁保华丁保华500011
32、物理李明500201数学庄前500102专业姓名学号数据修改小结数据修改小结本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录363610.3.3 查询与统计查询与统计 通过通过SQL语句从数据源中获取信息,查询条件语句从数据源中获取信息,查询条件由由SelectSelect语句的语句的WhereWhere短语构成,使用短语构成,使用And与与Or运算符组合出复杂的查询条件运算符组合出复杂的查询条件。模糊查询使。模糊查询使用运算符用运算符LikeLike,百分号,百分号%代替任意个不确定的代替任意个不确定的内容,用下划线内容,用下划线_ _代替一个不确定的内容。代替一个不确
33、定的内容。例如,例如,姓名姓名 Like Like 张张% % 将查询所有张姓的人员将查询所有张姓的人员例例10.7 根据输入的专业名称,在网格内显示根据输入的专业名称,在网格内显示Student.mdb数据库中该专业所有学生信息数据库中该专业所有学生信息 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录373710.3.3 查询与统计查询与统计 例例10.8使用数据列表框或数据组合框提供专业名使用数据列表框或数据组合框提供专业名称,实现查询称,实现查询例例10.9使用使用SQL的函数和分组功能,统计各专业的函数和分组功能,统计各专业的人数、年龄分布。的人数、年龄分布。
34、本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录383810.3.4 BLOB数据处理数据处理 二进制大型对象二进制大型对象(Binary Large Object,BLOB)是指任何需要存入数据库的随机大块字节流数据,是指任何需要存入数据库的随机大块字节流数据,例如图形或声音文件。数据库中存放例如图形或声音文件。数据库中存放BLOB的字的字段必须是二进制类型段必须是二进制类型(在在Access中为中为OLE对象对象),在在ADO中如何处理中如何处理BLOB类型的数据,把图形作类型的数据,把图形作为数据库的一个字段值存放在数据库,并能显示为数据库的一个字段值存放在数据库,
35、并能显示图形数据图形数据? 本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录3939BLOB数据处理数据处理 AppendChunkAppendChunk方法将方法将BLOBBLOB数据写入数据库数据写入数据库, ,语法格式:语法格式:ADO对象对象.Recordset.Fields(字段字段).AppendChunk Data用二进制访问方式打开用二进制访问方式打开BLOBBLOB数据文件数据文件定义一个与文件长度相同大小的字节型数组定义一个与文件长度相同大小的字节型数组将文件保存到数组将文件保存到数组使用使用ADOADO对象的对象的AppendChunkAppendC
36、hunk方法写入数据库方法写入数据库 例例10.10选择指定图形文件将数据写入到数据库,选择指定图形文件将数据写入到数据库,在浏览记录时显示照片。在浏览记录时显示照片。本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录404010.4 10.4 综综 合合 应应 用用例例10.11 设计一个多媒体信息管理系统,要求设计一个多媒体信息管理系统,要求能将多媒体数据保存在数据库,具有记录的增能将多媒体数据保存在数据库,具有记录的增加、删除、统计和多媒体信息重现等功能。加、删除、统计和多媒体信息重现等功能。例例10.12 设计一个飞行航班信息查询系统,要设计一个飞行航班信息查询系统
37、,要求具有记录的增加、编辑、删除、查询等功能求具有记录的增加、编辑、删除、查询等功能本章目录本章目录 VB.NET程序设计教程程序设计教程本书目录本书目录4141思考题思考题1.什么是关系型数据库?什么是关系型数据库?2. 简述简述SQL中常用的中常用的Select 语句的基本格式和用法。语句的基本格式和用法。3. 简述使用简述使用ADO数据控件访问数据库的步骤。数据控件访问数据库的步骤。4. 什么是数据绑定?怎样实现数据绑定?什么是数据绑定?怎样实现数据绑定?5. 在在ADO中如何用代码实现数据连接,创建一个记录中如何用代码实现数据连接,创建一个记录集对象?集对象?6在在ADO中如何用代码实现记录指针的移动?中如何用代码实现记录指针的移动?7. 如何实现对记录集的增、删、改功能?如何实现对记录集的增、删、改功能?8. 如果要显示数据表内的照片,可使用哪些控件?如果要显示数据表内的照片,可使用哪些控件?本章目录本章目录