视窗
loading...
您现在的位置:首页 > IT认证 > 软件水平 >

软考软件设计师重点难点:数据库


软件设计师重点难点——数据库

  数据库管理系统(DBMS)

  数据库管理系统(DBMS)是指DBS中对数据进行管理的软件系统,它是DBS的核心成分。DBS中所有与数据库打交道的操作,包括建库、查询、更新及数据控制,都是通过DBMS进行的。数据库管理系统总是基于某种数据库模型,可分为网状型、层次型、关系型和面向对象型DBMS。

  数据库管理系统的主要目标:把数据作为可管理的资源处理。

  数据库管理系统的5个重要功能:

  ◆数据库的定义功能:DBMS提供数据定义语言(DDL)定义数据库的3级结构,包括外模式、概念模式、内模式及其相互之间的映象,定义数据的完整性约束、保密限制等条件。因此在DBMS中包括DDL的编译程序。

  ◆数据库的操纵功能:提供数据操纵语言(DML)实现对数据的操作。有4种基本操作:检索(查询)、插入、删除、修改。在DBMS中包括DML的编译程序或解释程序。

  ◆数据库的保护功能:DBMS对数据库的保护主要通过4个子系统:

  A.数据库恢复(在数据库被破坏或数据不正确时,系统有能力把数据库恢复到最近某个正确的状态

  B.数据完整性控制(保证数据库中数据及语义的正确性和有效性,防止任何对数据错误的操作)

  C.多用户环境下的并发控制。

  D.数据安全性控制(防止未被授权的用户蓄谋或无意地存取数据库中的数据,以免数据的泄露或破坏)。

  ◆数据库的维护功能:这部分包括数据库的初始数据载入、转换功能、存储功能、数据库的改组、性能监视功能。

  ◆数据字典(DD):DD管理数据库3级结构的定义。对于数据库的操作都要通过查阅DD才能进行。现在有的大型系统中,把DD单独抽出来自成一个系统,成为一个系统工具,使得DD成为一个比DBMS更高级的用户与数据库之间的接口。

  要注意的是:应用程序并不属于DBMS的范围。应用程序是用主语言和DML编写的,程序中的DML语句由DBMS执行,而其余部分仍由主语言编译程序完成。

  数据库系统(DBS)

  数据库系统是一个复杂的系统,它是采用了数据库技术的计算机系统。因此,它不仅仅是一组对数据进行管理的软件(即DBMS),也不仅仅是一个数据库。它是一个实际可运行的、按照数据库方法存储、维护和向应用系统提供数据支持的系统。它是存储介质、处理对象和管理系统的集合体,由数据库DB、硬件支持系统、软件支持系统和数据库管理员DBA这四部分组成。

  SQL语句

  ◆基本表的定义可用“CREATE TABLE”语句实现,增加属性可以用ALTER...ADD...”语句,删除属性可以用“ALTER...DROP...”语句;删除已存在的表可用“DROP TABLE...”语句。

  ◆视图的定义和撤消

  ◆索引的定义和撤销

  ◆SELECT 查询语句

  ◆DELETE删除语句

  ◆INSERT插入语句

  ◆uPDATE语句

  关系运算

  专门的关系运算包括选择、投影、连接、除等。

  选择(Selection)

  选择又称为限制(Restriction)。它是在关系R中选择满足给定条件的诸元组,记作:

  σF(R) = {t|t∈R ∧ F(t)='真'}

  其中F表示选择条件,它是一个逻辑表达式,取逻辑值‘真’或‘假’。

  逻辑表达式F的基本形式为:

  X1 θ Y1 [ φ X2 θ Y2 ]

  θ表示比较运算符,它可以是>、≥、<、≤、=或≠。X1、Y1等是属性名或常量或简单函数。属性名也可以用它的序号来代替。φ表示逻辑运算符,它可以是僼、∧或∨。[ ]表示任选项,即[ ]中的部分可以要也可以不要,...表示上述格式可以重复下去。

  因此选择运算实际上是从关系R中选取使逻辑表达式F为真的元组。这是从行的角度进行的运算。

  举例

  设有一个学生-课程关系数据库,包括学生关系Student、课程关系Course和选修关系SC。下面的许多例子将对这三个关系进行运算。

  例1 查询信息系(IS系)全体学生

  σSdept='IS'(Student) 或 σ5='IS'(Student)

  例2 查询年龄小于20岁的元组

  σSage<20(Student)

  或σ4<20(Student) 。

  投影(Projection)

  关系R上的投影是从R中选择出若干属性列组成新的关系。记作:

  ΠA(R) = { t[A] | t∈R }

  其中A为R中的属性列。

  举例

  例3 查询学生关系Student在学生姓名和所在系两个属性上的投影:

  ΠSname,Sdept(Student)

  或

  Π2,5(Student)

  结果如图2-7(a)。

  投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。

  例4 查询学生关系Student中都有哪些系,即查询学生关系Student在所在系属性上的投影

  ΠSdept(Student)

  投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组,因为取消了某些属性列后,就可能出现重复行,应取消这些完全相同的行。

  连接(Join)

  连接也称为θ连接。它是从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作:

  

  其中A和B分别为R和S上度数相等且可比的属性组。θ是比较运算符。连接运算从R和S的笛卡尔积R×S中选取(R关系)在A属性组上的值与(S关系)在B属性组上值满足比较关系θ的元组。

  连接运算中有两种最为重要也最为常用的连接,一种是等值连接(equi-join),另一种是自然连接(Natural join)。

  θ为“=”的连接运算称为等值连接。它是从关系R与S的笛卡尔积中选取A、B属性值相等的那些元组。即等值连接为:

  

  自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。即若R和S具有相同的属性组B,则自然连接可记作:

 

  一般的连接操作是从行的角度进行运算。但自然连接还需要取消了重复列,所以是同时从行和列的角度进行运算。

  除(Division)

  给定关系R(X,Y)和S(Y,Z),其中X、Y、Z为属性组。R中的Y与S中的Y&127;可以有不同的属性名,但必须出自相同的域集。R与S的除运算得到一个新的关系P(X),P是R中满足下列条件的元组在X属性列上的投影:元组在X上分量值x的象集Yx包含S在Y上投影的集合。记作:

  

  其中Yx为x在R中的象集,x=tr[X]。

  举例

  例6 设关系R、S分别为图2-9中的(a)和(b),R÷S的结果为图2-9(c)。

  在关系R中,A可以取四个值{a1, a2, a3, a4}。其中:

  a1的象集为{(b1,c2), (b2,c3), (b2,c1)}

  a2的象集为{(b3,c7), (b2,c3)}

  a3的象集为{(b4,c6)}

  a4的象集为{(b6,c6)}

  S在(B,C)上的投影为{(b1,c2), (b2,c3), (b2,c1)}

  显然只有a1的象集(B,C)a1包含S在(B,C)属性组上的投影,所以R÷S={a1}。

R

 

S

 

R÷S

A

B

C

B

C

D

A

a1

b1

c2

b1

c2

d1

a1

a2

b3

c7

b2

c1

d1

 

a3

b4

c6

b2

c1

d1

 

a1

b2

c3

b2

c3

d2

 

a4

b6

c6

 

 

 

 

a2

b2

c3

 

 

 

 

a1

b2

c1

 

 

 

 

(a)

(b)

(c)

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞濞嗘挸绀夐柡鍥ュ灩閸屻劑鏌曢崼婵囧閻庢艾顭烽弻銊モ攽閸℃ê鐝旂紓浣瑰敾缂嶄線寮婚敓鐘茬妞ゆ劧瀵岄埀顒侇殜閺岀喖鎽庨崒姘ギ闂佽鍟崶褔鍞堕梺缁樻煥閹芥粎绮旈鍕厽闁绘ê寮堕幖鎰版煟鎺抽崝灞藉祫闂佺鎻粻鎴g箽闂備浇娉曢崳锕傚箯閿燂拷
闂傚倷绀侀幖顐︽偋濠婂牆绀堟繛鎴欏灪閸嬬喐銇勯弽顐沪闁绘帡绠栭弻鏇熺箾閸喖濮庨梺璇叉唉椤曆嗗絹闂佹悶鍎荤徊鑺ユ櫠閹绘崡褰掓偂鎼淬垹娈楅悗娈垮枛閻栧吋淇婇悜鑺ユ櫆闁告挆鍐帗婵犵數鍋涢悺銊у垝瀹€鈧懞閬嶆嚃閳哄嫬小婵炲鍘ч悺銊╁吹閸岀偞鐓涢柛鎰╁妼閳ь剝宕电划鏃囥亹閹烘挾鍙嗗┑鐐村灱濞呮洜鈧熬鎷�闂備浇顕уù鐑藉极閹间降鈧焦绻濋崑顖氱秺瀹曞崬螣鐠囧樊娼梻浣风串缁蹭粙寮甸鍕仼闁告鍊戞惔銊ョ倞闁挎繂鎳庨埛澶嬬箾鐎电ǹ甯堕柟铏耿閻涱喚鈧綆鍠栫粻锝嗙節婵犲倸顏柟鏋姂濮婃椽宕ㄦ繝鍐f嫻缂備礁顑嗙敮锟犲箚閸ャ劌顕遍柡澶嬪灥閸炪劑姊洪幖鐐插姌闁告柨绉归敐鐐哄冀椤儱閰e畷鍫曟晲閸涱厸鎷ゅ┑鐐差嚟閸樠囧箠濮椻偓楠炲棝宕橀鑲╊槹濡炪倖鍔戦崹娲儊閺冣偓缁绘繈濮€閿濆棛銆愰柣搴㈣壘閹芥粌危閹扮増鏅搁柨鐕傛嫹闂傚倷鑳堕幊鎾绘偤閵娾晛鍨傞柛鎰ゴ閸亪鏌熺€电ǹ小闁绘帒锕ら埞鎴︽偐閸欏鎮欏┑鐐叉噷閸ㄥ綊婀侀梺鎸庣箓濡盯鎯屾惔銊︾厓鐟滄粓宕滃▎鎾崇疇闁归偊鍏橀弸鏃堟煙鏉堥箖妾柛瀣儔閺屾盯顢曢妶鍛€剧紓鍌氱М閸嬫捇姊绘担鐟扮亰闁绘帪绠撴俊鐢告倷閻㈢數顦梺鍝勫暙閻楀棛鐥閺屾盯骞囬娑氥€婄紓浣插亾闁跨噦鎷�闂備浇顕х花鑲╁緤婵犳熬缍栧鑸靛姇閸ㄥ倹绻濇繝鍌氼伀妞も晠鏀遍妵鍕箳閹存繃娈茬紓浣风贰閸o絽顕i崼鏇熷€烽柛顭戝亝閻濐亜鈹戦悙鑼闁搞劌澧庣划姘舵焼瀹ュ懐鍔撮梺鍛婂壃閸涱垼妲繝鐢靛Х椤d粙鍩€椤掆偓閸熷潡鍩€椤掑倹鍤€闁挎洏鍨洪幏鍛村礈閹绘帗顓块梻浣呵归張顒傛崲瀹ュ鑸归柟缁㈠枟閻撴瑩鎮楀☉娆嬬細濠⒀屽墯缁绘繈鍩€椤掍焦濯撮柛锔诲幘閹虫繈姊洪崜鑼帥闁稿鎳愮槐鐐哄焵椤掑嫭鈷戦柣鐔稿閹界娀鏌eΔ鍐ㄤ户闁瑰箍鍨归~婵嬵敄閼恒儳浜欓梻浣告惈濞诧箓鎯岄鐐床闁糕剝绋掗悡娆愩亜閹炬鍟版禒鏉戭渻閵堝棙澶勯柛鎾跺枎閻g兘鏁愰崱娆戠槇闂佸憡鍔忛弲鈺佄i鐐粹拺闁奸€涘嵆閸濈儤鎱ㄦ繝鍌ょ吋闁哄苯鐗撻獮姗€顢欓懖鈺婂悈闂備胶鎳撻悺銊у垝瀹ュ洤鍨濋柨鏇炲€归悡銉︾箾閹寸倖鎴濓耿閻楀牏绡€闁逞屽墴楠炲秹顢欓幆褍瑙︽繝鐢靛仜濡霉妞嬪海鐜绘俊銈呭暟绾惧ジ鏌¢崒娑卞劌闁稿骸绻掗埀顒冾潐閹哥ǹ螞濠靛棛鏆︽慨妯垮煐閸嬫劗绱撴担璐細鐟滅増鍨垮娲箰鎼粹€虫灆闂佺懓鍤栭幏锟�闂備浇顕уù鐑藉极閹间礁绠犻柟鎹愬煐閺嗘粍銇勯幇鍓佺暠缂佲偓閸℃ḿ绠鹃柟瀵镐紳椤忓牆鏋侀柛顐f礃閸婄數鐥鐐村婵炲吋鍔欓弻娑㈠Ω閿斿墽鐓佺紓浣稿€圭敮锟犮€佸Δ浣瑰缂佸鏅濋锔解拺閻熸瑥瀚欢鑼磼缂佹ê鐏寸€殿噮鍋婇、娆撴偩瀹€濠冪カ婵犳鍠楅妵娑㈠磻閹剧粯鐓冪憸婊堝礈濞嗘挸纾归柛婵勫劤缁€濠囨倵閿濆骸鏋熼柛搴$Ч閺屾盯寮撮妸銉ョ瑢閻熸粎澧楃敮妤呮偂閳ь剙顪冮妶鍡楃瑨闁挎洩濡囩划鍫ユ晸閿燂拷闂傚倷娴囨竟鍫熴仈缁嬫娼栧┑鐘崇閻掗箖鏌熺紒銏犳灈婵☆偅锕㈤弻锝夋偄缁嬫妫嗙紒缁㈠幐閸嬫捇姊绘担鐟邦嚋缂佸甯掗悾婵嬪箹娴e摜锛涢梺鍝勭Р閸斿酣銆呴悜鑺ョ叆闁绘洖鍊圭€氾拷:webmaster@jscj.com闂傚倷绶氬ḿ褍螞瀹€鍕;闁瑰墽绮悡鐔搞亜椤愵偄骞樼紒浣哄厴閺岋綁鏁傜捄銊х厯闂佽桨绀佺粔褰掑极閹剧粯鏅搁柨鐕傛嫹4008816886

相关文章

无相关信息
更新时间2022-09-16 10:00:13【至顶部↑】
联系我们 | 邮件: webmaster@jscj.com | 客服热线电话:4008816886(QQ同号) |  婵犵數濮烽弫鍛婃叏閻戣棄鏋侀柟闂寸绾惧潡鏌熺€电ǹ啸缂佲偓婵犲洦鐓冪憸婊堝礈濮樿泛桅闁告洦鍨伴崡鎶芥煕閳╁喚娈旀い蹇d邯閺屾稑鈻庤箛鏇狀啋闂佸搫鐭夌紞渚€鐛崶顒夋晪闁告侗鍠楅惁婊堟⒒娴e懙褰掝敄閸℃稑绠查柛銉墯閸嬫ɑ銇勯弴妤€浜鹃悗瑙勬礀缂嶅﹪銆佸▎鎾崇煑闁靛/鍕剁础濠电姷鏁告慨鐑藉极閸涘﹥鍙忔い鎾卞灩绾惧鏌熼崜褏甯涢柣鎾存礋閺屾洘寰勭€n亞浠撮梺鍏兼た閸ㄤ即鍩㈤幘娲绘晝闁靛繆鏅滅€靛矂姊洪棃娑氬婵☆偅鐟╄棢闁糕剝菧娴滄粓鏌¢崒姘殹闁告梻鍠栭弻鐔肩嵁閸喚浼堥梺杞扮劍閹瑰洭寮幘缁樻櫢闁跨噦鎷�

付款方式留言簿投诉中心网站纠错二维码手机版

电话:
付款方式   |   给我留言   |   我要纠错   |   联系我们