已阅读5页,还剩48页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IT入门数据库基础,大连理工大学软件学院,2012-6-19,提纲,1数据库基础2SQL语言,1数据库基础,1.1基本概念1.2数据模型1.3关系模型1.4数据库系统结构,1.1基本概念,数据(Data)描述事物的符号记录。如数字,文字,图形,图像,声音,语言等。数据库(DataBase,简称DB)长期储存在计算机内的、有组织的、可共享的数据集合。数据库管理系统(DataBaseManagementSystem,简称DBMS)位于用户与操作系统之间的一层数据管理软件。主要功能:1、数据定义:(DataDefinitionLanguage)2、数据操作;(DataManipulationLanguage)3、数据库的运行管理;(安全,完整,并发,故障恢复)4、数据库的建立和维护功能。(初始数据,数据库转储、恢复,数据库重组织、性能监视、分析等)数据库系统(DataBaseSystem,简称DBS)引入数据库后的计算机系统。一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。,数据库系统,1.2数据模型(DataModel),认识抽象,信息世界,现实世界,机器世界,概念数据模型,基本数据模型,数据抽象过程,数据模型基本概念,概念数据模型是现实世界数据特征的抽象。用来抽象、表示和处理现实世界中的数据和信息。数据模型的要求能比较真实地模拟现实世界;容易为人所理解;便于在计算机上实现。分类概念数据模型(也称信息模型)基本数据模型数据模型三要素数据结构;数据操作;数据的完整性约束。,概念数据模型,实体联系模型(Entity-RelationshipModel)1976年,P.P.Chen提出。组成:矩形框,令形框,椭圆形框,线段。联系类型:1:1,1:N,M:N。E-R图构件矩形:表示实体集椭圆:表示属性菱形:表示联系集线段:实体集间或实体集与联系集间的连接。,基本概念,实体(Entity)客观存在并可以相互区别的事物。如人、事物、订货。属性(Attribute)实体具有的某一特性。如学生的学号、姓名、性别。码(Key)唯一标识实体的属性集。如学生的学号。域(Domain)属性的取值范围。如性别的域为(男、女)实体型(EntityType)用实体名及其属性名集合来抽象和刻画同类实体。如学生(学号,姓名,性别,出生年月,系,入学时间)实体集(EntitySet)同型实体的集合。联系(Relationship)不同实体集之间的联系。分类:一对一(1:1)一对多(1:n)多对多(m:n),课程,教员,授课,1,m,参考书,n,供应商,项目,供应,p,m,零件,n,职工,领导,1,n,供应商,供应商号,工作,仓库,零件,项目,职工,地址,账号,电话号码,仓库号,姓名,面积,职称,姓名,电话号,预算,年龄,职工号,供应,领导,库存,开工日期,项目号,单价,名称,描述,规格,零件号,供应量,库存量,n,n,p,m,m,1,n,1,n,工厂物资管理E-R图,基本数据模型,四种最常用的数据模型层次模型(HierarchicalModel)代表系统:IBM的IMS,阿波罗登月。网状模型(NetWorkModel)代表系统:GE的IDS,后DBTG数据库标准。关系模型(RelationalModel)代表系统:Oracle,Sybase,DB2面向对象模型(ObjectOrientedModel)比如Gemstone,Objectivity/DB,ObjectStore,1.3关系模型,1970年IBM公司SanJose研究室的E.F.Codd提出。关系模型是目前最重要的一种数据模型,它建立在严格的数学概念的基础之上,数学基础是关系代数。数据结构关系:数据的逻辑结构是一张二维表,由行列组成。学生成绩登记表示例,关系模型,关系操作与完整性约束关系操作数据定义:定义关系数据结构及其他对象。数据查询:支持数据检索。数据更新:数据的增、删、改操作。权限控制:防止数据的越权访问。注:提供关系操纵语言实现。完整性约束:实体完整性;参照完整性;自定义完整性术语关系(Relation):一个关系对应通常说的一张表。元组(Tuple):表中的一行。属性(Attribute):表中的一列成为一个属性。每个属性需有一个名称,即属性名。候选码:表中的某个属性组,可以唯一确定一个元组。主码(Key):选定的一个候选码,用于确定元组。超码:候选码的超集。域(Domain):属性的取值范围。分量:元组中的一个属性值。关系模式:对关系的描述。关系名(属性1,属性2,属性)关系模型要求1NF;2NF;3NF;BCNF;4NF存储结构逻辑上:实体与联系都用表来表示。物理上:以文件的形式存储。,关系模型的特点,优点有严格的数学基础。概念单一。实体、联系、检索结果都用关系表示。存取路径对用户透明。具有很高的数据独立性和安全保密性。缺点查询效率往往不如非关系数据模型。,常用的关系数据库管理系统,OracleIDC2007年调查,Oracle占据了44.1%的市场份额。IBM为21.3%,微软为18.3%。世界上十个最大的UNIXOLTP网站全部运行于Oracle上。SybaseSybase公司的数据库产品。其他数据库DB2InformixMSSQLServerMySqlPostgreAccess,概念模型与关系模型转换,实体-关系(表)属性码联系-关系(表)属性码,系(系号,系名,电话,系主任号),系主任(工作证号,姓名,年龄),1:1联系,系主任(系号,工作证号,姓名,年龄),系(系号,系名,电话),主键,外键,学生(学号,姓名,性别,系号),系(系号,系名,电话,系主任),1:N联系,学生(学号,姓名,性别,系号),课程(课号,课名,学分),选课(学号,课号,成绩),成绩,M:N联系,职工(职工号,姓名,年龄,领导),供应(供应商,项目,零件,数量),关系的类型,基本关系实表视图虚表临时表,1.4数据库系统结构,数据库系统的三级模式结构,数据库系统结构-用户角度,模式的概念,数据库系统的结构从DBMS角度看,三级模式结构。(内部系统结构)从最终用户角度看,分集中式、分布式、客户/服务器和并行结构。(外部体系结构)模式(Schema)数据库中全体数据的逻辑结构和特征的描述。(仅仅涉及型的描述,不涉及值)实例(Instance)模式的一个具体值。数据库系统三级模式结构外模式、模式、内模式。,2SQL语言,SQL数据定义语言SQL数据操纵语言SQL数据查询语言,2.1数据库定义命令,ACCESS支持的数据类型基本表定义基本表的创建基本表的删除,2.1.1ACCESS的数据类型,MicrosoftAccessdatatypes,datatypesusedtocreatetables,andODBCSQLdatatypes.,MicrosoftAccessdatatypes,datatypesusedtocreatetables,andODBCSQLdatatypes,limitationsonMicrosoftAccessdatatypes.,limitationsonMicrosoftAccessdatatypes.,使用SQL语句,查询设计SQL视图SQL语句,使用SQL语句,2.1.2基本表定义,基本表的创建一般格式:CREATETABEL(列级完整性约束条件,列级完整性约束条件,表级完整性约束条件;说明建表的同时可以定义与该表有关的完整性约束,这些约束条件被存入系统的数据字典中,当用户操作表时,DBMS会自动检查该操作是否有违背完整约束条件.建立约束的考虑:如果完整性约束条件涉及到该表的多个属性列,则必须定义在表级上;否则既可以定义在列级上也可以定义在表级上。表名、列名是不区分大小写的。对一个用户而言,表名必须唯一;一个表中,列名必须唯一。表名可包括任意合法字符,长度不超过64个字符。,2.1.2基本表定义,基本表的创建例CREATETABLEStudent(SnoCHAR(5)NOTNULLUNIQUE,SnameCHAR(20)UNIQUE,SsexCHAR(1),SageNUMERIC,SdeptCHAR(15),CONSTRAINTPRI_STUDENTPRIMARYKEY(Sno);,Primarykey,createtableStudent(Snochar(9)PRIMARYKEY,Snamechar(20)notnull,Ssexchar(2),Sagesmallint,Sdeptchar(20);createtableSC(Snochar(9)notnull,Cnochar(4)notnull,GradeSmallint,Primarykey(Sno,Cno);,createtableStudent(Snochar(9),Snamechar(20)notnull,Ssexchar(2),Sagesmallint,Sdeptchar(20),PRIMARYKEY(Sno);createtableCourse(cnochar(10),cnamevarchar(20),constraintpk_courseprimarykey(cno);,Foreignkey,createtableSC(Snochar(9)notnull,Cnochar(4)notnull,GradeSmallint,Primarykey(Sno,Cno),Foreignkey(Sno)referencesStudent(Sno),Foreignkey(Cno)referencesCourse(Cno);,2.1.3基本表删除,一般格式:DROPTABLE;说明基本表一旦删除,表中的数据、此表上建立的索引和视图都将自动被删除。例删除STUDENT表。DROPTABLESTUDENT;,2.2数据操纵语言,INSERT语句UPDATE语句DELETE语句,2.2.1INSERT语句,插入单个元组格式:INSERTINTO(,)VALUES(,);注意:对表定义时说明了NOTNULL约束的属性列,必须给值而不能为空值,否则会出错。如果INTO子句中没有指明任何列名,则新插入的记录必须在每个属性列上均有值(即给定的值与定义的属性个数必须项等且赋值相容)。字符型和日期型数据在插入时要加单引号。例Insertintostudentvalues(201201,张三,男,30,软件工程);,2.2.2UPDATE语句,修改某一个元组的值格式:UPDATESET=,=WHERE;例updatestudentsetsname=李四wheresno=201201;,2.2.3DELETE语句,删除某一个元组的值格式:DELETEFROMWHERE;例删除名字为李四的学生信息.Deletefromstudentwheresname=李四;删除多个元组的值例删除student表中的所有数据.Deletefromstudent;,2.3SQL数据查询语言,查询语句的一般结构单表查询多表查询,2.3.1查询语句的一般结构,命令:SELECT格式:SELECTALL|DISTINCT,FROM,WHEREGROUPBYHAVINGORDERBYASC|DESC;描述:根据WHERE子句的条件表达式,从FROM子句指定的本表中找出满足条件的元组,再按SELECT子句中的目标列表达式,选出元组中的属性值形成结果表。如果有GROUPBY子句则将结果按的值进行分组,该属性列相等的元组为一个组。通常会在每组中作用集函数。如果GROUP子句带有HAVING短语,则只有满足指定条件的组才予输出。如果有ORDERBY子句,则结果表还要按的值升序或降序排列。,2.3.2单表查询,选若干元组查询满足条件的元组WHERE常用的查询条件,2.3.2单表查询,选若干元组查询满足条件的元组比较例:selectsno,sna
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026药包材附录检查指导原则
- 苏教七年级下册期末解答题压轴数学模拟测试题目经典
- 【语文】云南省昆明市红旗小学小学三年级上册期末试题
- 江苏省扬州市小学三年级上学期数学期末检测卷
- 门窗厂转让合同
- 福建省小学四年级下学期数学复习试卷-简单方程
- 毕业前签订实习合同
- 乡村小型水库水位调节项目推进进度、问题及解决方案
- 2025秋小学四年级上册劳动技术期末测试卷(苏科版)附答案
- 2025年益阳市保安员招聘考试题库附答案解析
- FZ/T 54021-2009聚对苯二甲酸丙二醇酯(PTT)预取向丝
- House-Brackmann面神经功能分级标准
- 工艺安全检查表
- 运动按摩全套课件
- 中央电大护理专业本科通科实习出科考核病历
- 中新天津生态城居民信息登记表
- 保安工作标准及奖惩办法
- 上海市松江区泖港镇镇属单位招考聘用(必考题)模拟卷和答案
- 公司指定账户打款说明
- 职工安全生产教育培训记录表
- 规划放线报告样本
评论
0/150
提交评论