




已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据库基础知识(补充),与数据库有关的概念,数据库(DB),数据库是存储在计算机存储设备上,结构化的相关数据集合。简言之,它是有结构的数据的集合。 数据库中的数据必须满足结构化、共享性、独立性、完整性、安全性等特性。,结构化是指数据应有一定的组织结构,而不是杂乱无章的。,共享性是指数据能够为多个用户同时使用。,独立性是指数据记录和数据管理软件之间的独立,完整性是指保证数据库中的数据的正确性。,安全性是指不同级别的用户对数据的处理有不同的权限,数据库中的数据可是文字、图像、声音等。,在数据处理领域中不仅包括数字、字母、文字和其他特殊字符组成的文本形式的数据,而且包括图形、图像、动画、影像、声音等多媒体数据。,数据模型,一.实体描述,1.实体:客观存在并且相互区别的事物称为实体,2.实体属性:描述实体的特征称为属性。,3.实体集和实体型:属性值的集合表示一个实体,属性的集合表示一个实体类型,称为实体型。同类型的实体的集合称为实体集。,二.实体间联系,1.一对一联系:,2.一对多联系:,3.多对多联系:,实体之间的对应关系称为联系,反映现实世界各种事物之间的相互关联,一般有以下三种联系。,三、数据模型简介,1.层次数据模型:反映客观事物之间一对多(1:n)的关系,2.网状数据模型:反映客观事物之间多对多(m:n)的关系,3.关系数据模型:把事物之间(内部)关系用二维表表示,数据库中的数据是用数据模型来表示数据的结构,数据模型一般有以下三种。,二维表的列称为字段 二维表的行称为记录 行列交叉处成为值 行和列的排列次序不重要,关系数据模型,一.关系术语,1.关系:二维表,2.元组:记录。,3.属性:字段。,4.域:属性取值范围。,5.关键字:唯一标志记录。,6.外部关键字:在本表不是关键字,但是在另外表中是关键字或者候选关键字。,数据库的设计步骤:,分析建立数 据库的目的,确定数据库中的表,确定表中的字段,确定主关键字,确定表之间的关系,都属于表的设计范畴!,需先分析为什么要建立数据库以及所建数据库应完成的任务。,确定表的原则: 1.每个表应该只包含一个主题信息。 2.表中不应该包含重复,并且信息不应该在表之间复制。,字段名命名规则: 1.长度1-64个字符。 2.可以包含字母、数字、汉字、空格和其他字符。 3.不能包括句号、感叹号、方括号和重音号。,例: 设计一个教学管理数据库,主要包括教师管理、学生管理、学生选课管理,那么表的设计如下:,数据类型(Access),1二进制数据类型 二进制数据是一些用十六进制表示的数据。二进制数据类型包括三种:binary、varbinary和image。 2整数数据类型 整数数据类型有五种:bit、int、bigint、smallint、tinyint。,数据类型(SQL Server),3浮点数据类型 浮点数据类型包括float和real两种类型,用于存储范围非常大的数字。 4精确小数数据类型 精确小数数据类型包括decimal和numeric两种,可以精确指定小数点两边的总位数和小数点右边的位数。,5货币数据类型 货币数据类型专门用于货币数据处理,包括money和smallmoney。 6日期/时间数据类型 日期/时间数据类型可以存储日期和时间的组合数据,包括datetime和smalldatetime两种数据类型。,7字符数据类型 字符型数据是由字母、数字和符号组合而成。字符数据类型又可分为3种:char(n)、varchar(n)、text。 8unicode数据类型 unicode数据类型用于存储要用两个字节才能存储的双字节字符,例如汉字、日文或韩文等。unicode数据类型包括nchar、nvarchar和ntext。,9sql_variant数据类型 sql_variant数据类型可以应用在列、参数、变量和函数返回值中,以sql_variant为数据类型的数据可以存储除text、ntext、image和sql_variant数据类型以外的各种数据。,什么是SQL,SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库操纵语言。 SQL使用场合: 应用程序与数据库的通讯 通过DBMS或第三方工具,完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据,SQL命令分组,DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据 DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象 DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限,DML命令,SELECT:用于检索数据 INSERT:用于增加数据到数据库 UPDATE:用于从数据库中修改现存的数据 DELETE:用于从数据库中删除数据,Select命令,功能:从数据库中检索所需要信息。 例:从学生表(student)中检索出李明的档案信息,其SQL语法为: Select * from student where SNAME=李明,Select 命令语法,SELECT predicate *|table.*| table.field ,table.field2 ,. AS alias1 ,alias2,. FROM tableexpression ,. IN externaldatabase WHERE. GROUP BY. HAVING. ORDER BY. WITH OWNERACCESS OPTION,SELECT ALL/DISTRINCT *| FROM WHERE ORDER BY ASC|DESC;,2.1.2 predicate,ALL,DISTINCT, DISTINCTROW,TOP n DISTINCT: Select DISTINCT SNAME from student TOP n: Select top 2 * from student,查询字段,所有字段:Select * from Student 指定查询字段:Select SNO,SNAME from Student 字段换名: Select SNO as 学号,SNAME as 姓名 from Student 查询多表字段: Select a.SNO,a.SNAME,b.CNAME,b.SCORE from Student a,Curse b where a.SNO=b.SNO Select a.*,b.CNAME,b.SCORE from Student a,Curse b where a.SNO=b.SNO,where子句,指定从表中获取哪些记录。 Select * from student where SSEX=女 Select a.SNO, a.SNAME, b.CNAME, b.SCORE from Student a,Curse b where a.SNO= b.SNO and b.SCORE=90,order by子句,指定结果如何排序:升序:ASC;降序:DESC。 Select * from student order by SNAME Select a.SNO, a.SNAME, b.CNAME, b.SCORE from Student a,Curse b where a.SNO= b.SNO order by a.SNAME, b.SCORE DESC,SQL的特殊操作,IN 操作符 LIKE 操作符 SQL 的运算符及表达式 SQL 的统计函数 Between and 运算符 Union 操作 INNER JOIN操作,in操作符,用在where后,当同时查询多个条件时,用以简化写法 Select * from student where SNAME in (李明,成功) 等价SQL语句: Select * from student where SNAME =李明 or SNAME =成功 多层SQL查询,like操作符,实现模糊查询。 例:找出所有姓李的学生 Select * from student where SNAME like 李* 或: Select * from student where SNAME like 李%,运算符及表达式,逻辑运算符 AND 逻辑与 OR 逻辑或 NOT 逻辑非,数学函数,1、AVG(字段名或表达式):算数平均数 Select avg(sold) as avg_old from student 2、COUNT (字段名或表达式) :计算记录条数 Select COUNT(*) as NSRS from student where SSEX=女 3、SUM (字段名或表达式) :返回某特定字段或是运算的总和数值。 Select sum(score) as t_score from Curse where sno=870101 4、MAX (字段名或表达式)、 MIN (字段名或表达式):求最大、最小值,BETWEEN.AND,决定某一数值是否介于特定的范围之内 例:查询年龄在18-20岁之间的学生 Select * from student where sold BETWEEN 25 AND 30 等价于: Select * from student where sold=25 AND sold=30,数据更新语句,Update:更新表中已有的数据 Insert into:向表添加新的数据 Delete From:删除表中的记录,update语句,更新指定条件的数据。 UPDATE table SET newvalue WHERE criteria 例:更新学生成绩 Update Curse set score=65 where sno= 870102 and cname= 微机原理与应用 Update Curse set score=75,cname=数据结构 where sno= 870102 and cname= 微机原理与应用 所有学生的年龄加1 Update student set sold=sold+1,insert into语句,向表中增加新的数据。 INSERT INTO () values () 例:增加新的成绩 Insert into Curse (sno,cname,score) values (870102,数据结构,75),insert into语句,向表中增加新的数据。 INSERT INTO () values () 例:增加新的成绩 Insert into Curse (sno,cname,score) values (870102,数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026届福建省邵武市第四中学化学高二第一学期期末学业水平测试试题含答案
- 鱼缸猫咪课件
- 济南市2025-2026学年七年级下学期语文月考测试试卷
- 集安市2025-2026学年七年级上学期语文期中测试试卷
- 电路接线布线知识培训课件
- 电视维修维语知识培训课件
- 电网电工知识培训课件
- 电缆知识培训心得课件
- 正义必胜和平必胜人民必胜全文
- 电竞领队专业知识培训课件
- 校服专业知识培训内容课件
- 2025年全国质量月数智驱动筑基强链创新质量生态宣传
- 2025海航航空食品(北京)有限公司招聘260人笔试参考题库附答案解析
- 电路维修安全知识培训课件
- 2025至2030中国压力袜(弹性袜)行业项目调研及市场前景预测评估报告
- 2026届新高考历史热点冲刺复习秦统一多民族封建国家的建立
- 2025年小学一年级新生家长会
- 房屋抵押的合同(标准版)
- 征兵体检面试全攻略:面试题及答案解析
- 工会保障培训课件
- 2025年小学语文教师新课程标准考试题目(含答案)
评论
0/150
提交评论