




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录未找到目录项。一数据库基础知识(第1、2章)一、有关观点1.数据2.数据库(DB)3.数据库管理系统(DBMS)Access桌面DBMSVFPSQLServerOracle客户机/服务器型DBMSMySQLDB24.数据库系统(DBS)数据库(DB)数据库管理系统(DBMS)开发工具应用系统二、数据管理技术的发展1.数据管理的三个阶段人工管理文件系统数据库系统数据可否保留不可以保留能够保留能够保留数据面向的对象某一应用程序某一应用程序整个应用系统无共享,一组共享性差,一个数数据的共享程度数据只好对应一个据文件只好对应一共享性高应用程序。个应用程序。数据的独立性不独立,它是应用独立性差数据库与应用系统程序的一部分。完好分开观点模型一、模型的三个世界1.现实世界2.信息世界:即依据需求剖析画观点模型(即E-R图),E-R图与DBMS没关。3.机器世界:将E-R图变换为某一种数据模型,数据模型与DBMS有关。1注意:信息世界又称观点模型,机器世界又称数据模型二、实体及属性1.实体:客观存在并可互相区其余事物。2.属性:3.重点词(码、key):能独一表记每个实体又不含剩余属性的属性组合。一个表的码能够有多个,但主码只好有一个。例:借书表(学号,姓名,书号,书名,作者,订价,借期,还期)规定:学生一次能够借多本书,同一种书只好借一本,但能够多次续借。4.实体型:即二维表的构造例student(no,name,sex,age,dept)5.实体集:即整个二维表三、实体间的联系:1.两实体集间实体之间的联系1:1联系1:n联系m:n联系2.同一实体集内实体之间的联系1:1联系1:n联系m:n联系四、观点模型(常用E-R图表示)实体型:属性:联系:说明:①E-R图作为用户与开发人员的中间语言。E-R图能够等价变换为层次、网状、关系模型。举例:学校有若干个系,每个系有若干班级和教研室,每个教研室有若干教员,此中有的教授和副教授每人各带若干研究生。每个班有若干学生,每个学生选修若干课程,每门课程有若干学生选修。用E-R图画出观点模型。2数据模型一、层次模型:用树型构造表示实体之间的联系。①每个结点代表一个实体型。②只好直接办理一对多(含一对一)的实体关系。③查找层次数据库中的记录,速度较慢。二、网状模型:用图构造表示实体之间的联系。①每个结点代表一个实体型。②能够办理多对多的实体关系。③查找网状数据库中的记录,速度最快。三、关系模型:用二维表表示实体之间的联系。1.重要术语:关系:一个关系就是一个二维表;元组:二维表的一行,即实体;关系模式:在实体型的基础上,注明主码。关系模型:指一个数据库中所有二维表构造的会合。2.特色:①关系模型是成立在严格的数学理论的基础上的;②关系模型的存取路径对用户透明;③查找关系数据库中的记录,速度最慢。小结:数占有三种种类,DBMS就有三种种类,DB亦有三种种类。数据库系统构造一、数据库系统的系统构造①单机构造:DBMS、数据库、开发工具、应用系统安装在一台计算机上。②C/S构造:局域网构造3客户机:装开发工具、应用系统服务器:装DBMS、数据库B/S构造:Internet构造服务器:装DBMS、数据库、开发工具、应用系统客户机:装IE即可三、数据库系统的模式构造1.三级模式①模式:是数据库中全体数据的逻辑构造和特色的描绘。模式只波及数据库的构造;模式既不波及应用程序,又不波及数据库构造的储存;②外模式:是模式的一个子集,是与某一个应用程序有关的逻辑表示。特色:一个应用程序只好使用一个外模式,但同一个外模式可为多个应用程序使用。③内模式:描绘数据库构造的储存,但不波及物理记录。2.两级映象①外模式/模式映象:保证数据库的逻辑独立性;②模式/内模式映象:保证数据库的物理独立性;3.两级映象的意义①使数据库与应用系统完好分开,数据库改变时,应用系统不用改变。②数据的存取完好由DBMS管理,用户不用考虑存取路径。数据库管理系统1.DBMS的功能:负责对数据库进行一致的管理与控制。①数据定义:即定义数据库中各对象的构造②数据操控:包含对数据库进行查问、插入、删除、改正等操作。③数据控制:包含安全性控制、完好性控制、并发控制、数据库恢复。2.DBMS的构成:DDL语言DML语言DCL语言适用程序注意:SQL集DDL,DML,DCL功能于一体;②所有应用程序经过SQL语句才能接见数据库一、基本观点1.码:能独一表记元组的属性集。2.候选码:一个属性集既能独一表记元组,且又不含有剩余属性,一个关系模式能够有多个候选码。3.主码:任选候选码中的一个。44.主属性:主码中包含的各个属性。5.非主属性:不包含在主码中的各个属性。6.外码:设F是关系R的一个属性,不是R的主码,但倒是另一个关系S的主码,则称F是关系R的外码。例:student(sno,sname,ssex,sage,sdept)Sc(sno,cno,grade)Sc的主码为:(sno,cno);外码为:sno二数据库设计(第3章)一、数据库设计的步骤①需求剖析:认识剖析用户的需要、要求。②观点构造设计:依据需求剖析的结果画观点模型(即E-R图)。③逻辑构造设计:将E-R图变换为某一种数据模型,并优化。④物理构造设计⑤数据库实行⑥数据库运转与恢复观点构造设计一、局部E-R图设计1.确立局部范围往常把系统波及的各个部门或各个主要功能作为局部。2.确立实体与属性①属性是不可以再分的数据项;②联系只发生在两实体之间;③原则上,能够作为属性,就不要作为实体。二、归并成整体E-R图1.除去各局部E-R图的矛盾问题。2.按公共实体名归并,生成初步E-R图。3.除去冗余的属性和冗余的联系,生成整体E-R图。5逻辑构造设计一、联系的属性和主码1)联系的属性:一定包含有关系的各实体型的主码。2)联系的主码1:1联系:能够是有关系的任一实体型的主码。1:n联系:一定是n方实体型的主码。m:n联系:一定是有关系的各实体型的主码之和。二、E-R图向关系模型的变换1)把每个实体型变换为一个关系模式。2)1:1联系:能够消化到有关系的任一实体型对应的关系模式中。XMXHNL班长1BHXH管理1班级BHRS班长(XH,XM,NL,BH)班级(BH,RS)3)1:n联系:能够消化到n方实体名对应的关系模式中。例:一个班级有多名学生,每名学生只好属于一个班级。每一个班级有一名班长,他是学生中的一员。XHXMNL学生1n班长构成XHBH11班级BHRS6学生(XH,XM,NL,BH)班级(BH,RS,XH)班长的学号4)m:n联系:一定变换为一个关系模式,而且不可以消化。例:snamessexsagesdeptsno学生msnograde选修ncno课程cnocreditcname学生(sno,sname,ssex,sage,sdept)课程(cno,cname,credit)选修(sno,cno,grade)5)多元联系:不可以消化例:供给商m供给nk产品部件物理构造设计与数据库实行1.物理构造设计在逻辑设计的基础上,为每个关系模式选择适合的储存构造与储存方式。选择储存构造:即决定每个表的记录次序。7选择存取方式:即决定为哪些属性成立非齐集索引,以便加速查找速度。一般把常常查询的属性名指定为非齐集索引。2.数据库实行主要工作:定义数据库构造;组织数据入库;编写应用程序;数据库试运转;三关系数据库(第4章)一、域(domain)1.定义:域是一组拥有同样种类的值的会合。2.域的基数:域中所含数据的个数。二、笛卡尔积1.定义:给定一组域D1,D2,D3,则D1×D2×D3称为笛卡尔积。2.笛卡尔积D1×D2×D3对应一个二维表,所含元组的个数等于各个域的基数之积。三、关系1.定义:笛卡儿积的一部分元组称为关系。2.关系的目(或度):一个关系所含属性的个数。3.关系的性质随意两个元组不可以完好同样,同一关系的属性名不同意重复。四、关系的完好性1.实体完好性:指关系的所有主属性都不可以取空值。8注意:实体完好性不只是是主码整体不可以取空值。2.参照完好性:指一个关系外码的取值一定是有关关系中主码的有效值或空值。例:班级(班名,人数)学生(学号,姓名,性别,密码,班名)在学生表中,班名的取值一定是班级表[班名]的值或空值。关系代数一、传统的会合运算设关系R、S的构造完好同样,则:R∪S:由属于R或属于S的元组构成。R∩S:由既属于R又属于S的元组构成。R-S:由属于R而不属于S的元组构成。思虑:(R∩S)∪(R-S)=?R×S:设R有m个属性,K1个元组;S有n个属性,K2个元组,则R×S含有(m+n)个属性,(K1×K2)个元组。二、特意的关系运算1.选择:从关系R中选择知足条件的元组。记为:F(R)2.投影:从关系R中选择若干属性构成新的关系,并把新关系的重复元组去掉。记为:(R)A3.条件连结:将两关系按必定条件连结成一个新关系,记为:RFSF(RS)说明:条件连结:两关系能够没有公共属性,如有公共属性,则新关系含有重复属性。4.自然连结:将两关系按公共属性连结成一个新的关系,并把新关系的重复属性去掉。记为:RS说明:①自然连结:两关系起码有一个公共属性。②关于R的每个元组,S都从第一个元组开始判断,若两元组的公共属性值同样,则产生一个新元组增添到新关系中,最后把新关系中的重复属性去掉。等值连结?5.除:给定关系R(x,y)和S(y,z),则R÷S=P(x),此中x,y,z为属性组。求解过程:①求R中x能够取哪些值,并求各值的象集。②求S在属性组y上的投影K。③检查每个象集能否包含K9注:除不是一个一定的运算,能够由其余运算符取代。例:设有关系R,S以下列图,求R÷S。RABCSBCDa1b1c2b1c2d1a2b3c7b2c1d1a3b4c6b2c3d2a1b2c3a4b6c6a2b2c3a1b2c1解:在关系R中,A能够取四个值,a1,a2,a3,a4。a1的象集为{(b1,c2),(b2,c3),(b2,c1)}a2的象集为{(b3,c7),(b2,c3)}a3的象集为{(b4,c6)}a4的象集为{(b6,c6)}在(B,C)上的投影K为{(b1,c2),(b2,c3),(b2,c1)}明显只有a1的象集包含K,故R÷S={a1}结论:怎样写关系代数表达式?答:①查问波及多个关系时,一般使用∞→。②查问波及“否认”时,一般用差运算。③查问波及“所有”时,一般用除运算。④查问波及“起码”时,一般用×10四关系数据库标准语言SQL(第5章)T-SQL一、SQL语言的特色①SQL语言集数据定义、数据查问、数据操控、数据控制的功能于一体。动词数据定义Create、drop数据查问select数据操控Insert、delete、update数据控制Grant、revoke②所有的DBMS都支持SQL语言。SQL基础一、创立和使用数据库1.创立数据库createdatabase数据库名2.使用数据库Use数据库名3.删除数据库dropdatabase数据库名二、定义表1.创立表createtable表名(属性名种类,,属性名种类)①指定表记字段:identity(表记种子,表记增量)②指定公式字段:属性名as表达式例:createtablestudent(nointidentity(1,1),namechar(6),chismallint,matsmallint,scoreaschi+mat)2.删除表droptable表名,,表名11三、select语句select*/表达式表[into新表]from表名,,表名[where条件][groupby属性名][having条件][orderby属性名][Asc/Desc]1.Select子句①*代表所有属性名②若一个属性名来自多个表,则属性名前须冠以表名,格式为:表名.属性名③设置表达式的又名:表达式As又名④限制查问结果的记录行数:all返回所有记录topn返回前面n号记录distinct表示撤消重复行说明:topn只好放在重点字select的后边;all、distinct只好放在重点字select或聚合函数的后边。2.Where子句①in的格式:属性名in(常量,,常量)like的格式:属性名like通配字符串通配符有:%表示0个或多个字符表示1个字符在Where子句中指定连结:Where表名1.属性名=表名2.属性名3.Orderby子句orderby属性名1[Asc/Desc],属性名2[Asc/Desc]4.聚合函数sum(属性名):纵向求数值型属性之和。②avg(属性名)③count(*)返回表的记录行数(含重复行)。count(属性名)返回指定列中取非NULL值的单元格数量。count(distinct属性名)返回指定列中取非NULL值、非重复的单元格数量。12max(属性名)min(属性名)5.Groupby子句使用Groupby子句时,Select子句只好使用分组项字段和聚合函数例:以性别为分组项,求每一组的均匀年纪。Selectssex,avg(sage)as均匀年纪FromstudentGroupbyssex6.Having子句①Having子句只好跟在Groupby子句以后,且只好使用聚合函数和分组项字段。②where子句放在Groupby子句以前,甚至能够没有Groupby子句;且不可以包含聚合函数。例:以系别为分组项,查问学生均匀年纪大于19岁的系的系名,均匀年纪。Selectsdept,avg(sage)as均匀年纪FromstudentGroupbysdeptHavingavg(sdept)>197.into子句功能:将查问结果保留到新的基表中。一、查问的分类单表查问连结查问嵌套查问1.连结查问:在where子句中指定连结where表名1.属性名=表名2.属性名2.嵌套查问①嵌套查问的特色·每级查问的from子句一般只包含一个表名。·一个嵌套查问总能够分解为若干个单表查问,总能够改写成连结查问。·若查问结果显示的属性名来自一个表,才能够写成嵌套查问。·子查问不可以使用orderby子句,orderby只好用于最顶层的查问。②在where子句中指定子查问13where属性名[not]in(子查问):子查问返回一列多行。where属性名=(子查问):子查问返回一列一行。where[not]exists(子查问):子查问返回多列多行。五、数据操控1.insert语句(1)每次插入一条记录insertinto表名[(属性名表)]values(表达式表)(2)插入子查问的结果insertinto表名[(属性名表)]子查问例:insertintostudentselect*fromstudent12.update语句update表名set属性名=值,,属性名=值[where条件]缺省where子句,默以为更新所有记录。3.delete语句deletefrom表名[where条件]五关系数据库规范化理论(第7章)函数依靠一、有关观点:1.函数依靠:任给R(U),U为属性集,x、y为U的子集,假如关于x的每个值,y有独一确立的值与之对应,则称x决定y,或y函数依靠于x。记为:x→y。完好函数依靠:若x→y,且关于x的所有真子集x′,都有x′y,则称x完好决定y,或y完好函数依靠于x。记为:xfy。14结论:若x→y,且x只包含一个属性,则xfy。3.部分函数依靠:若x→y,且存在x的一个真子集x′,知足x′→y,则称x部分决定y,或y部分函数依靠于x。记为:xpy。4.传达函数依靠:若x→y,y→z,但y∕x,则xtz二、平庸函数依靠与非平庸函数依靠设x→y,假如y是x的子集,则该依靠是平庸的。如:Sno,sname→sno假如y中起码有一个属性不在x中,则该依靠是非平庸的。如:Sno,sname→sname,sdept假如y中没有一个属性在x中,则该依靠为完好非平庸的。三、函数依靠的推理规则设有关系R,x、y、z为R的一个属性集,则有:①自反律:若yx,则x→y。②增广律:若x→y,则xz→yz。③传达律:若x→y,y→z,则x→z。注意传达律与传达函数依靠的差别。④归并律:若x→y,x→z,则x→yz。⑤分解律:若x→yz,则x→y,x→z。关系模式的规范化一、问题提出表XHKHKMXMDZCJ961C1OS高妙D170962C2DBS高飞D272962C4AI高飞D280962C1OS高妙D175963C1OS高妙D19015答:存在问题①数据冗余大;②改正麻烦;③插入异样:应当插入到DB中的数据插不进去。如:新开课程没有学生选修时,新开课程的课程号、课程名插不进去。④删除异样:不该当删除的数据被删掉。如选修某门课的学生毕业了,在删除学生信息的同时,把课程信息也删除去。结论:一个好的关系模式应知足:①冗余应尽可能少;②应尽可能防止插入、删除异样;③消去关系中不适合的属性依靠关系。二、范式①什么叫范式?指一个关系的非主属性函数依靠于主码的程度。②什么叫关系规范化?指一个关系从初级范式向高级范式的变换过程。1NF2NF3NFBCNF4NF5NF③应用:关系规范化理论应用在逻辑构造设计阶段。三、关系模式的规范化1.第一范式(1NF)①定义:若关系R的所有属性不可以再分,则R∈1NF2.第二范式(2NF)①定义:若关系R∈1NF,且它的每个非主属性都完好依靠于主码,则称R∈2NF。②存在问题:冗余大:R1必需冗余,R2冗余能够改正。改正麻烦插入异样:如新来的教师没有上课,则该教师的信息就没方法插入R2表中。删除异样:若某位教师只授一门课,当该门课不开时,该教师的信息亦被删除。③原由:存在非主属性对主码的传达依靠。KH→XM,XM→DZ,但XMKH∴KHtDZ[传达依靠一定有两个非主属性]④解决方法:将R2一分为二R21表R22表KHKMXMXMDZ16C1OS高妙高妙D1C2DBS高飞高飞D2C4AI高飞R21主码:KHR22主码:XM3.第三范式(3NF)①定义:若关系R∈2NF,且它的每个非主属性都不传达依靠于主码,则称R∈3NF。②规范化过程非规范关系↓使每个属性都不可以再分1NF↓消去非主属性对主码的部分依靠2NF↓消去非主属性对主码的传达依靠3NFBCNF:关系模式R<U,F>中,如每一个决定要素都包含码,则R是BC范式。假如R属于BCNF那么R必定属于3NF,反之未必。3NF↓消去主属性对主码的部分依靠和传达依靠BCNF4.结论①若R∈1NF,且主码只含一个属性,则R必定为2NF。②若R∈2NF,且只有0~1个非主属性,则R必定为3NF。3NF一般控制了数据冗余,一般防止了操作异样。④范式并不是越高越好,恰到好处。17六数据库保护技术(第8章)安全管理一、两种身份考证模式:仅windows模式:用户只好使用windows登录名登录SQLServer混淆模式:用户能够使用windows登录名或SQLServer登录名登录SQLServer二、两种身份考证:用户登录到SQLServer时,一定使用特定的登录名和密码表记自己。Windows身份考证:用户登录到SQLServer时,使用操作系统目前的登录名和密码。SQLServer身份考证:用户登录到SQLServer时,一定显式供给登录名和密码。常用安全性控制方法:用户表记和控制、存取控制、视图、审计、数据加密数据库完好性一、在创立表时指定拘束1.主键拘束[constraint拘束名]Primarykey[Clustered/Nonclustered][(属性名,,属性名)]说明:①每个拘束都有一个拘束名,拘束名往常由系统自动给出。②列级拘束:只波及到一个属性的拘束,它放在有关属性的后边,且省略属性名表。表级拘束:波及到多个属性的拘束。③创立主键拘束、独一性拘束时能够指定齐集(clustered)或非齐集(nonclustered)。④主键拘束默以为齐集的,独一性拘束默以为非齐集的。⑤一个表最多只好创立一个拘束是齐集的,齐集拘束会影响数据表的记录号次序。2.外键拘束[constraint拘束名]Foreignkey[(属性名,,属性名)]References主键表名(属性名,,属性名)注意:两表关系的方式:①暂时关系:where表名1.属性名=表名2.属性名18②永远关系:创立外键拘束3.独一性拘束[constraint拘束名]Unique[Clustered/Nonclustered][(属性名,,属性名)]主键拘束与独一拘束的差别:①在一个表中只好定义一个主键拘束,但可定义多个独一性拘束;②指定为主键拘束的字段不可以取null值,但指定为独一性拘束的字段同意取null值。4.检查拘束[constraint拘束名]Check(条件表达式)缺省拘束[constraint拘束名]Default常量二、删除表中的拘束altertable表名dropconstraint拘束名,...,拘束名注意:alter语句后边只好随着一个子句。三、向表增添拘束altertable表名addconstraint拘束名拘束定义,...,constraint拘束名拘束定义拘束定义指:Primarykey[Clustered/Nonclustered](属性组)Foreignkey(属性组)references主键表名(属性组)Unique[Clustered/Nonclustered](属性组)Check(条件表达式)Default常量for属性名默认对象①默认对象与默认拘束的功能近似。②默认对象以独自的对象创立,能够绑定到数据库的所有表中。③默认拘束只好绑定到一个表中。19规则①规则与check拘束的功能近似。①则以独自的对象创立,能够绑定到数据库的所有表中。②check拘束只好绑定到一个表中。索引一、索引的观点:①索引使用户能迅速接见数据表的特定信息。②索引一定依赖于某个基本表,不可以独自存在。二、索引的种类:齐集索引:影响数据表的记录次序非齐集索引:不会影响数据表的记录次序注:一个表只好成立一个齐集索引,但能够成立若干个非齐集索引。三、创立索引1.自动创立索引:。假如在数据表的某个属性设置主键拘束或独一拘束,则系统将在这些属性上自动创立独一索引。。自动创立的索引随拘束的存在而存在,随拘束的消逝而消逝。2.使用SQL语句创立索引Create[unique][clustered/nonclustered]index索引名On表名(属性名[asc/desc],属性名[asc/desc])注:①若未指定clustered,则创立非齐集索引;②若未指定排序方式,则为ASC;③text,ntext种类的字段不可以指定为索引字段。四、删除索引:Dropindex索引名,,索引名思虑题:创立主键时,假如使主键字段值不影响数据表的记录次序?视图一、视图的特色:20①视图只有构造,没有记录,是虚表;②一个视图总对应着一个select语句;③对视图的查问、更新,其实是对基本表的查问、更新。二、定义视图:1.创立视图:Createview视图名[(属性名,,属性名)]As子查问[withcheckoption]说明:视图的属性个数一定与子查问中select子句的表达式个数同样。2.删除视图:Dropview视图名,,视图名三、查问视图:select*/表达式表from视图名,,视图名[where条件][groupby属性名][orderby属性名][Asc/Desc]四、操控视图:1.向视图插入一条记录insertinto视图名[(属性名表)]values(表达式表)2.改正视图中的数据update视图名set属性名=值,,属性名=值[where条件]3.删除视图中的记录deletefrom视图名[where条件]储存过程1.什么叫储存过程?将一组SQL语句,以一个名称储存在数据库中,就形成储存过程。2.创立储存过程Createproc储存过程名[@形参名种类][=常量][output]AsSQL语句序列说明:①[=常量]:用于指定形参的默认值;[output]用来指定该形参值是能够返回的。21触发器一、保护数据完好性的举措
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江西师范高等专科学校《数学课程标准分析》2023-2024学年第二学期期末试卷
- 江苏省泰兴市济川实验中学2024-2025学年中考化学试题模拟题及解析(全国卷Ⅲ:)含解析
- 辽宁科技学院《现代办公技术应用》2023-2024学年第二学期期末试卷
- 西安城市建设职业学院《植物生物技术概论》2023-2024学年第二学期期末试卷
- 内蒙古经贸外语职业学院《国际经济地理》2023-2024学年第二学期期末试卷
- 山大附属中学2024-2025学年高三一诊练习四化学试题含解析
- 模特聘用合同书
- 二零二五版按提成收入的协议书
- 电商运营分成合同二零二五年
- 委托独家中介房屋买卖服务合同书二零二五年
- 学生户外抓鱼活动方案
- 材料方案设计
- 购车金融方案
- 墙面油漆工程的详细施工工序
- 血液透析水处理系统通用课件
- 知识产权与人工智能
- 人工晶体脱位查房
- 春季过敏性疾病预防
- 煤矿一通三防知识培训课件
- 电磁波简介完
- 国家开放大学《广告学概论》形考任务1-4参考答案
评论
0/150
提交评论