数据库原理复习资料
数据库原理复习资料整理

第一章1.四大基本概念:数据:数据库中存储的基本对象,它是描述事物的符号记录。
种类有:文字、图形、图象、声音等。
特点是:数据与其语义是不可分的。
数据库:(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合。
其特点是:数据按一定的数据模型组织、描述和储存;可为各种用户共享;冗余度较小;数据独立性较高;易扩展。
(特点:永久存储、有组织、可共享)数据库管理系统:是位于用户与操作系统之间的一层数据管理软件。
数据库管理系统的主要功能:数据定义功能;数据组织、存储和管理;数据操纵功能;数据库的事物管理和运行管理;数据库的建立和维护功能;其他功能。
数据库系统:是指在计算机系统中引入数据库后的系统。
一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(和用户)构成。
在不引起混淆的情况下常常把数据库系统简称为数据库。
2.数据管理技术的三个阶段及其特点人工管理阶段:特点:1、数据不保存。
2、没有软件系统对数据进行管理。
3、这一时期没有文件的概念,数据的组织方式必须由程序员自行设计。
4、一组数据对应一组程序,数据是不共享的。
5、数据不具有独立性,当数据结构发生变化时,应用程序要变化。
文件系统阶段:特点:1、数据可以长期保存。
2、由文件系统管理数据。
3、数据共享性差, 冗余度大—文件是面向应用的。
4、数据独立性差—是不具有弹性的无结构的数据集合,文件之间是孤立的,不能反映事物间联系。
数据库系统阶段:特点:数据的管理者:DBMS数据面向的对象:现实世界数据的共享程度:共享性高数据的独立性:高度的物理独立性和一定的逻辑独立性数据的结构化:整体结构化数据控制能力:由DBMS统一管理和控制3、数据库系统的特点:数据结构化;数据的共享性高,冗余度低,易扩充;数据独立性高;数据有DBMS统一管理和控制。
4、数据模型的组成要素:数据结构、数据操作和完整性约束。
数据结构是对系统静态特性的描述。
数据库原理复习资料

数据库原理习题一、知识点1、数据库系统和文件系统的比较。
2、DB、DBMS、DBS的概念及它们之间的关系。
3、简述数据库系统的三级模式结构。
4、简述数据库系统三级模式结构中的两级映像,并说明其优点。
5、文件系统的特点。
6、文件系统的缺陷。
7、简述数据模型的三要素。
8、数据独立性的概念及分类。
9、简述数据独立性的特点。
10、DBMS如何实现数据的独立性。
11、简述数据库系统的组成部分。
12、DBMS的功能。
13、简述DBA的主要职责。
14、简述关系模型的特点。
15、简述关系模型的组成部分。
16、简述关系的性质。
17、简述关系的完整性及完整性规则。
18、参照完整性规则及使用时的注意事项。
19、参照完整性违约处理方法;20、DBMS在哪些操作时间差实体完整性规则,检查的内容及违约处理方法。
21、简述自然连接和等值连接的区别。
22、简述视图和关系的区别。
23、简述内连接和外连接的区别。
24、简述在SQL语言中实现子查询的方法和各自的特点。
25、简述嵌入式SQL语言需要解决的问题。
26、简述使用游标的四个步骤。
27、简述在SQL中建表时如何实现对关系完整性。
28、简述游标的特点。
29、简述关系数据库设计中存在的问题。
30、函数依赖的概念;31、简述1NF,2NF,3NF,BCNF解决的模式设计中的问题。
32、简述E-R模型之间的冲突类型及相应的解决方法。
33、简述E-R模型向关系模型转换的基本规则。
34、数据安全性的概念,实现数据库安全性控制的常用方法和技术。
35、简述事务的概念及特点。
36、简述事务的并发操作带来的数据不一致性的类型。
37、封锁的概念、封锁的类型及含义。
38、封锁粒度的概念。
39、简述封锁协议类型及含义。
40、简述恢的策略。
41、简述两阶段琐的含义及解决的问题。
42、简述常用数据模型的数据结构。
43、简述关系完整性及规则。
44、给定关系模式判断达到第几范式,并说明原因,至少要求BCNF。
数据库原理复习资料

数据库原理复习资料《数据库原理》复习重点第一章绪论1.理解数据、数据库、数据库管理系统、数据库系统的概念。
数据:描述事物的符号记录。
数据库(DB):长期储存在计算机内、有组织的、可共享的数据集合。
数据库管理系统(DBMS):位于用户与操作系统之间的一层数据管理软件。
数据库系统(DBS):计算机系统中引入数据库后的系统。
DBS包括DB、DBMS2.理解型与值、模式与实例的关系,阐述数据库系统三级模式结构的内涵。
型:对某一类数据的结构和属性的说明。
值:是对型的一个具体赋值。
模式:数据库中全体数据的逻辑结构和特征的描述。
相对稳定的,反映的是数据的结构及其关系。
实例:模式的一个具体值。
相对变动的,反映的是数据库某一时刻的状态。
三级模式:外模式、模式、内模式外模式:指某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。
对应于用户级。
模式:由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述。
对应于概念级。
内模式:是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构,对应着实际存储在外存储介质上的数据库。
对应于物理级。
两层映象:外模式/模式映象、模式/内模式映象。
3.理解数据库系统的组成。
一般由数据库、数据库管理系统、应用系统、数据库管理员(DBA)、用户构成。
第二章数据模型与概念模型1.理解数据模型的概念和分类,掌握数据模型三要素。
数据模型:用来抽象表示和处理现实世界中的数据和信息,即现实世界的模拟。
分类:层次模型、网状模型、关系模型。
数据模型三要素:数据结构、数据操作、完整性约束。
数据结构:所研究的对象类型的集合,用于描述系统的静态特性。
数据操作:对数据库中各种对象(型)和实例(值)允许执行的操作的集合,用于描述系统的动态特性。
完整性约束:数据及其联系应该满足的条件限制。
数据库原理自考复习资料

第一章数据库概论1.人工管理阶段数据管理的特点:(1)数据不保存在机器中(2)无专用的软件对数据进行管理(3)只有程序的概念,没有文件的概念(4)数据面向程序2.文件系统阶段数据管理的特点:(1)数据可长期保存在外存的磁盘上(2)数据的逻辑结构和物理结构有了区别(3)文件组织已呈多样化。
有索引、链接和散列文件(4)数据不再属于某个特定的程序,可重复使用。
3.文件系统显露出三个缺陷:(1)数据冗余性(2)数据不一致性(3)数据联系弱4.数据库阶段的管理方式具有以下特点:(1)采用复杂的数据模型表示数据结构(2)有较高的数据独立性(3)数据库系统为用户提供方便的用户接口(4)系统提供四方面的数据控制功能(5)对数据的操作既可以以记录为单位,又可以以数据项为单位5.数据描述三个领域之间的关系:从事物的特性到计算机中的数据表示,经历了三个领域:现实世界、信息世界、机器世界。
(1)现实世界:存在于人们头脑之外的客观世界,称为现实世界。
(2)信息世界:是现实世界在人们头脑中的反映。
(3)机器世界:信息世界的信息在机器世界中以数据形式存储。
信息世界中数据描述的术语有:实体、实体集、属性、实体标识符机器世界中数据描述的术语有:字段、记录、文件、关键码它们的对应关系是:在数据库中每个概念都有类型和值之区分,类型是概念的内涵,值是概念的外延6.数据描述的两种形式:数据描述有物理描述和逻辑描述两种形式。
物理数据描述指数据在存储设备上的存储方式,物理数据是实际存放在存储设备上的数据。
逻辑数据描述指程序员或用户用以操作的数据形式,是抽象的概念化数据。
数据管理软件的功能之一,就是要把逻辑数据转换成物理数据,以及把物理数据转换成逻辑数据。
7.物理存储介质层次:8.数据模型的种类:目前广泛使用的数据模型可分为两种类型:概念数据模型、结构数据模型概念数据模型:是独立于计算机系统的模型,完全不涉及信息在系统中的表示,只是用来描述某个特定组织所关心的信息结构; 它是现实世界的第一层抽象,是用户和数据库设计人员之间进行交流的工具; 这一类中著名的模型是“实体联系模型”,简称“ER”模型。
数据库原理复习资料

数据库原理习题题型一选择题(15个)二填空题(10个)三简答题(6个)四设计题(1个)五应用题(1个)六综合题(1个)一、知识点1、数据库系统和文件系统的比较。
2、简述数据库系统的三级模式结构。
3、简述数据库系统三级模式结构中的两级映像,并说明其优点。
4、简述数据库系统的组成部分。
5、简述DBA的主要职责。
6、简述关系模型的特点。
7、简述关系模型能够的组成部分。
8、简述关系的性质。
9、简述关系的完整性。
10、什么是主码?什么是侯选码?什么是外码?11、简述自然连接和等值连接的区别。
12、简述视图和关系的区别。
13、简述内连接和外连接的区别。
14、简述在SQL语言中实现子查询的方法和各自的特点。
15、简述嵌入式SQL语言需要解决的问题。
16、简述游标的特点。
17、数据库的完整性概念与数据库的安全性概念的区别与联系?18、简述关系数据库设计中存在的问题。
19、简述1NF,2NF,3NF,BCNF解决的模式设计中的问题。
20、简述E-R模型之间的冲突类型及相应的解决方法。
21、简述E-R模型向关系模型转换的基本规则。
22、试判断该表是否可以直接作为关系数据库中的关系,并说明原因。
23、简述数据库保护中安全性控制的一般方法。
24、简述事务的概念及特点。
25、简述事务的并发操作带来的数据不一致性的类型。
26、简述封锁的类型及含义。
27、简述封锁协议类型及含义。
28、简述恢的策略。
29、“串行调度”和“可串行化调度”有何区别?30、简述两阶段琐的含义及解决的问题。
31、简述数据模型的三要素。
32、简述数据库系统数据独立性的特点。
33、简述常用数据模型的数据结构。
34、简述在SQL中建表时如何实现对关系完整性。
35、简述关系完整性及规则。
35、给定关系模式R(sno,sdept,mname,cname,grade),其中各属性的含义是: sno :学号,sdept :系代码,mname :系主任,cname :课程名,grade成绩,请判定该关系模式属于第几范式,并说明原因。
数据库原理复习资料

数据库原理复习资料一、引言数据库是计算机系统中最重要的组成部分之一,它用于存储和管理大量的数据。
对于多数软件开发者和数据分析师来说,掌握数据库原理是至关重要的。
本文将为大家提供一份数据库原理复习资料,帮助大家更好地理解数据库的基本概念、常见操作和优化技巧。
二、数据库基本概念1. 数据库的定义和分类:数据库是一个按照特定数据模型组织、存储和管理数据的集合。
常见的数据库模型包括层次模型、网状模型和关系模型。
2. 关系数据库的特点:关系数据库是基于关系模型构建的数据库,其特点包括数据以表的形式组织、数据之间存在关系、数据具有结构化和独立性等。
3. 数据库的三级模式:数据库的三级模式包括外模式(用户视图)、概念模式(全局视图)和内模式(物理视图),它们各自定义了不同的数据库逻辑和物理结构。
4. 数据库查询语言:数据库查询语言用于从数据库中检索数据。
常用的查询语言包括结构化查询语言(SQL)和非过程化查询语言。
三、数据库操作1. 数据定义语言(DDL):DDL用于定义数据库中的各种对象,包括表、视图、索引等。
常见的DDL语句有CREATE、ALTER和DROP等。
2. 数据操作语言(DML):DML用于对数据库表中的数据进行增删改查操作。
常见的DML语句有SELECT、INSERT、UPDATE和DELETE等。
3. 事务处理:事务是对数据库进行一系列操作的逻辑单元,它要么全部成功执行,要么全部回滚。
事务具有ACID特性,即原子性、一致性、隔离性和持久性。
4. 数据库约束:约束用于对数据库中的数据进行限制,保证数据的完整性和一致性。
常见的约束包括主键约束、唯一约束、外键约束和检查约束等。
四、数据库优化技巧1. 合理设计数据库结构:合理的数据库结构可以减少冗余数据和提高查询效率。
常见的设计技巧包括表的范式化、合适的数据类型选择和正确的索引设计等。
2. 查询优化:查询是数据库应用中最频繁的操作之一,优化查询可以提高系统的响应速度。
数据库原理复习资料.wps

关系代数表达式的优化: 目的:为了系统在执行时既省时间又能提高效率。 基本策略:先做选择,运用投影去除多余属性等等。 优化算法:语法树(详见教材。尽量提前做选择操作;在每个操作后,应做个投影操作,去
掉不用的属性值) 对于一些简单的代数表达式,直接用“尽量提前做选择操作;在每个操作后,应做个投影
个分量等于 U 的第一个分量,t 的第二个分量等于 U 的第二个分量 综上,题意:检索 LIU 老师所授课程的课程号(第一个分量)、课程名(第二个分量)。
域关系演算
域演算表达式的一般形式为:{|P(t1...,tk)} 其含义为:这是一个域集合,其中每个域变量的取值关系满足公式 P 所规定的条件。
(9) 将新课程元组('C10','PHYSICS','YU')插入到关系 C 中 (C∪('C10','PHYSICS','YU'))
(10) 将学号 S4选修课程号为 C4的成绩改为85分。 (SC-('S4','C4',?)∪('S4','C4',85)) 修改操作用代数表示分两步实现:先删去原元组,再插入新元组。题目中未给出原先
事务提交用 COMMIT 命令,事务回滚用 ROLLBACK 命令。 注意 UPDATE 命令 ALTER 命令、DELETE 命令与 DTOP 命令含义的不同
7. SQL 中的完整性约束 用 PRIMARY KEY 指明主键; 用 FOREIGN KEY…REFERENCES…指明外键和参照关系,即参照完整性规则。 在属性值上的约束:非空值约束 NOT NULL;CHECK 子句 全局约束:CHECK 子句;断言 ASSERTIONS
数据库复习资料

数据库复习资料数据库原理题库一、简答题1. 简述数据库系统的特点。
1.数据结构化数据之间具有联系,面向整个系统。
2.数据的共享性高,冗余度低,易扩充数据可以被多个用户、多个应用程序共享使用,可以大大减少数据冗余,节约存储空间,避免数据之间的不相容性与不一致性。
3.数据独立性高数据独立性包括数据的物理独立性和逻辑独立性。
物理独立性是指数据在磁盘上的数据库中如何存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样一来当数据的物理存储结构改变时,用户的程序不用改变。
逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不改变。
4.数据由DBMS统一管理和控制数据库的共享是并发的(concurrency)共享,即多个用户可以同时存取数据库中的数据,甚至可以同时存取数据库中的同一个数据。
DBMS必须提供以下几方面的数据控制功能:数据的安全性保护(security)数据的完整性检查(integrity)数据库的并发控制(concurrency)数据库的故障恢复2. 数据库的故障恢复(recovery)P2793. 数据库管理系统的主要功能有哪些?【P5】(1)数据定义功能。
DBMS提供相应数据语言来定义(DDL)数据库结构,它们是刻画数据库框架,并被保存在数据字典中。
(2)数据组织、存取、管理功能。
DBMS要分类组织、存储和管理各种数据,包括数据字典。
用户数据。
数据的存取路径等。
(3)数据操作功能。
DBMS提供数据操纵语言(DML),实现对数据库数据的基本存取操作:检索,插入,修改和删除。
(4)数据库事务管理和运行管理功能。
DBMS提供数据控制功能,即是数据的安全性、完整性和并发控制等对数据库运行进行有效地控制和管理,以确保数据正确有效。
(5)数据库的建立和维护功能。
包括数据库初始数据的装入,数据库的转储、恢复、重组织,系统性能监视、分析等功能。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库原理习题一、核心知识点1、数据库系统和文件系统的比较。
文件系统:分别组织文件,存储各类对象的记录。
系统不支持文件间的联系,由应用程序负责查询表达及数据的维护。
文件系统的弱点:文件之间无联系、难于维护数据的完整性数据库系统(关系):数据统一按表结构存放,联系也表示为表形式查询:只需提查询要求,由系统完成查询过程维护:应用提出完整性约束,系统自动检查。
数据库系统的用武之地:有查询、数据复杂2、简述数据库系统的三级模式结构。
CODASYL(Conference On Data System Language,美国数据系统语言协商会)提出模式、外模式、存储模式三级模式的概念。
三级模式之间有两级映象。
外模式(Sub-Schema):用户的数据视图。
是数据的局部逻辑结构,模式的子集。
模式(Schema):所有用户的公共数据视图。
是数据库中全体数据的全局逻辑结构和特性的描述。
内模式(Storage Schema):又称存储模式。
数据的物理结构及存储方式。
3、简述数据库系统三级模式结构中的两级映像,并说明其优点。
外模式/模式映象:定义某一个外模式和模式之间的对应关系,映象定义通常包含在各外模式中。
当模式改变时,修改此映象,使外模式保持不变,从而应用程序可以保持不变,称为逻辑独立性。
模式/内模式映象:定义数据逻辑结构与存储结构之间的对应关系。
存储结构改变时,修改此映象,使模式保持不变,从而应用程序可以保持不变,称为物理独立性。
4、简述数据模型的三要素。
数据结构:描述系统的静态特性,即组成数据库的对象类型。
包括:数据本身:类型、内容、性质。
如网状模型中的数据项、记录,关系模型中的域、属性,关系等。
数据之间的联系:例如网状模型中的系型(Set Type)在数据库系统中一般按数据结构的类型来命名数据模型。
数据操作:描述系统的动态特性,即对数据库中对象的实例允许执行的操作的集合,包括操作及操作规则。
一般有检索、更新(插入、删除、修改)操作。
数据模型要定义操作含义、操作符号、操作规则,以及实现操作的语言。
数据的约束条件:是完整性规则的集合,规定数据库状态及状态变化所应满足的条件,以保证数据的正确、有效、相容。
5、简述数据据独立性的特点。
数据独立性:当数据的结构发生变化时,通过系统提供的映象(转换)功能,使应用程序不必改变6、简述数据库系统的组成部分。
硬件:内存大,放得下OS,DBMS核心,系统缓冲区,用户工作区等;大容量、直接存取的外存设备;作数据备份的磁带。
软件:OS,DBMS,高级语言编译系统及其与数据库的接口,应用开发工具,应用系统。
数据:包括目标数据(数据本身)及描述数据(对数据的说明信息)。
用户:最终用户:通过应用系统的用户接口(菜单等)使用数据库。
应用程序员:基于外模式来编写应用程序。
系统分析员:负责应用系统的需求分析和规范定义,确定系统的软硬件配置,参与数据库模式设计。
数据库管理员DBA:负责数据库的全面管理和控制。
DBA的重要性:重要资源,维护整个组织的信息资源。
共享资源,多用户共享,需要统一管理、协调、监控。
7、简述DBA的主要职责。
DBA职责:建库方面:确定模式、外模式、存储结构、存取策略、负责数据的整理和装入。
用库方面:定义完整性约束条件,规定数据的保密级别、用户权限,监督和控制数据库的运行情况,制定后援和恢复策略,负责故障恢复。
改进方面:监督分析系统的性能(空间利用率,处理效率);数据库重组织,物理上重组织,以提高性能;数据库重构造,设计上较大改动,模式和内模式修改。
8、简述关系模型的特点。
关系模式的特点:关系模型的概念单一;关系必须是规范化关系;在关系模型中,用户对数据的检索操作不过是从原来的表中得到一张新的表。
即是说:(1)在用户眼中,无论是原始数据还是结果数据都是同一种数据结构——二维表;(2)关系模型能够中数据操作是集合操作;(3)关系模型把存取路径向用户隐蔽起来;优点:简单,表的概念直观,用户易理解。
非过程化的数据请求,数据请求可以不指明路径。
数据独立性,用户只需提出“做什么”,无须说明“怎么做”。
坚实的理论基础。
9、简述关系模型的组成部分。
关系:一个关系对应于我们平常所说的一张表;元组:表中的一行称为一个元组;属性:表中的一列称为属性,给每一列取一个名称即为属性名;主码:表中的某个属性组,他们的值唯一地标识一个元组;域:属性的取值范围;分量:元组中的一个属性值;关系模式:对关系的描述,用关系名(属性名1,属性名2,….,属性名n)来表示;10、简述关系的性质。
(1)列是同质的即每一列中的分量来自同一域,是同一类型的数据。
其中的每一列称为一个属性,不同的属性要给予不同的属性名。
如TEACH(T, S, C)={(t1 , s1 , c1), (t1 , t2 , c1)}是错误的(2)不同的列可来自同一域,每列必须有不同的属性名。
如P={t1,t2 ,s1,s2 ,s3},C= {c1,c2},则TEACH不能写成TEACH (P, P, C),还应写成TEACH(T, S, C)(3)行列的顺序无关紧要(4)任意两个元组不能完全相同(集合内不能有相同的两个元素,一般限制为任意两个元组的候选码不能相同)(5)每一分量必须是不可再分的数据。
满足这一条件的关系称作满足第一范式(1NF)的。
这是规范条件中最基本的一条.11、简述关系的完整性。
关系模型的完整性是对关系的某种约束条件。
分为三类:实体完整性参照完整性用户定义的完整性其中:(1)实体完整性和参照完整性是关系模型必须满足的完整性约束条件称为关系的两个不变性,应该由关系系统自动支持;(2)用户定义的完整性是应用领域需要遵循的约束条件,体现了具体领域中的语义约束。
12、简述自然连接和等值连接的区别。
自然连接(Natural join )从两个关系的广义笛卡儿积中选取在相同属性列B上取值相等的元组,并去掉重复的属性列。
自然连接与等值连接的不同自然连接中相等的分量必须是相同的属性组,并且要在结果中去掉重复的属性,而等值连接则不必。
13、简述视图和关系的区别。
视图从一个或几个基本表导出的表数据库中只存放视图的定义而不存放视图对应的数据视图是一个虚表用户可以在视图上再定义视图关系关系模式在某一时刻的状态或内容动态的、随时间不断变化的14、简述内连接和外连接的区别。
对于外连接,连接条件是必须的;对于内连接,连接条件是可选的,没有连接条件等价于两个关系的笛卡儿积。
15、简述在SQL语言中实现子查询的方法和各自的特点。
不相关子查询:子查询的查询条件不依赖于父查询由里向外逐层处理。
即每个子查询在上一级查询处理之前求解,子查询的结果用于建立其父查询的查找条件。
相关子查询:子查询的查询条件依赖于父查询首先取外层查询中表的第一个元组,根据它与内层查询相关的属性值处理内层查询,若WHERE子句返回值为真,则取此元组放入结果表然后再取外层表的下一个元组重复这一过程,直至外层表全部检查完为止16、简述嵌入式SQL语言需要解决的问题。
区分SQL语句与C语言语句嵌入的SQL语句以EXEC SQL开始,以分号(;) 或END_EXEX结束。
EXEC SQL delete from PROFwhere DNO = 10;嵌入SQL语句与C语言之间的数据传递宿主变量C变量,既可以用在C语句中,也可用在SQL语句中,用来在两者之间传递数据。
宿主变量的声明:声明为通常的C变量,并将其放在下列标识语句之间,EXEC SQL BEGIN DECLARE SECTIONEXEC SQL END DECLARE SECTION指示变量C变量,用来指示返回给宿主变量的值是否为null值,以及返回给宿主变量的字符串是否发生了截断。
应用场合:如果一个宿主变量所对应的数据库字段允许空值,或字符串类型的宿主变量的长度可能小于所对应的数据库字段的长度,则需要一个指示变量来指明数据库访问的返回状态。
指示变量的返回值:= 0:取到主变量的值不空,没有发生截断。
= 1:取到主变量的值为空值。
> 0:取到主变量的值发生了截断,指示变量的值是截断前的字符串的实际长度。
指示变量的用法:声明与宿主变量的声明方式一样,在数据操纵语句中,在宿主变量和指示变量之间加( : )或关键字indicator。
EXEC SQL BEGIN DECLARE SECTIONint prof_no;char prof_name[30];int salary;short name_id;short sal_id;EXEC SQL END DECLARE SECTIONEXEC SQL select PNAME , SALinto :prof_name : name_id , :salary: sal_idfrom PROFwhere PNO = prof_no ;SQL与主语言之间操作方式的协调SQL:一次一集合。
C语言:一次一记录。
游标:在查询结果的记录集合中移动的指针。
若一个SQL语句返回单个元组,则不用游标。
若一个SQL语句返回多个元组,则使用游标。
不需要游标的数据操作结果是一个元组的select语句EXEC SQL select PNAME , SALinto :prof_name : name_id , :salary: sal_idfrom PROFwhere PNO = prof_no ;insert语句EXEC SQL insert into PROFvalues (:prof_no, :prof_name , :salary ,:dept_no , : salary) ;delete语句EXEC SQL delete from PROFvalues PNO > :prof_no ;update语句EXEC SQL update PROFset SAL = :salarywhere PNO = : prof_no ;需要游标的数据操作✧当select语句的结果中包含多个元组时,使用游标可以逐个存取这些元组。
✧活动集:selecT语句返回的元组的集合。
✧当前行:活动集中当前处理的那一行。
游标即是指向当前行的指针。
游标分类:滚动游标:游标的位置可以来回移动,可在活动集中取任意元组。
非滚动游标:只能在活动集中顺序地取下一个元组。
更新游标:数据库对游标指向的当前行加锁,当程序读下一行数据时,本行数据解锁,下一行数据加锁。
SQL语句执行信息反馈良好的应用程序必须提供对错误的处理,应用程序需要知道SQL语句是否正确执行了,发生错误时的错误代码,执行时遇到特殊情况时的警告信息。
SQL通讯域SQLCA是一结构,每一嵌入SQL语句的执行情况在其执行完成后写入USERCA结构中的各变量中, 根据SQLCA中的内容可以获得每一嵌入SQL语句执行后的信息,应用程序就可以做相应的处理。