资源预览内容
第1页 / 共34页
第2页 / 共34页
第3页 / 共34页
第4页 / 共34页
第5页 / 共34页
第6页 / 共34页
第7页 / 共34页
第8页 / 共34页
第9页 / 共34页
第10页 / 共34页
亲,该文档总共34页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
数据库基础知识(补充)与数据库有关的概念数据库(DB) 数据库是存储在计算机存储设备上,结构 化的相关数据集合。简言之,它是有结构的 数据的集合。 数据库中的数据必须满足结构化、共享性、 独立性、完整性、安全性等特性。结构化是指数据 应有一定的组织 结构,而不是杂 乱无章的。共享性是指 数据能够为 多个用户同 时使用。独立性是指数 据记录和数据 管理软件之间 的独立完整性是指 保证数据库 中的数据的 正确性。安全性是指不 同级别的用户 对数据的处理 有不同的权限 数据库中的数据可是文字、图像、声音等。在数据处理领域中不仅包括数 字、字母、文字和其他特殊字符 组成的文本形式的数据,而且包括图形、图像、动画、影像、声音等多媒体数据。数据模型数据模型一.实体描述 1.实体:客观存在并且相互区别的事物称为实体 2.实体属性:描述实体的特征称为属性。3.实体集和实体型:属性值的集合表示一个实体 ,属性的集合表示一个实体类型,称为实体型。 同类型的实体的集合称为实体集。学生1(学号、姓名、性别、出生日期、系别、籍贯)实体属性实体集实体型学生2(学号、姓名、性别、出生日期、系别、籍贯)学生n(学号、姓名、性别、出生日期、系别、籍贯)二.实体间联系1.一对一联系:2.一对多联系:3.多对多联系:实体之间的对应关系称为联系,反映现实世 界各种事物之间的相互关联,一般有以下三 种联系。部门经理部门职工部门职工工作项目三、数据模型简介1.层次数据模型:反映客观事物之间一对多(1:n)的关系 2.网状数据模型:反映客观事物之间多对多(m:n)的关系 3.关系数据模型:把事物之间(内部)关系用二维表表示数据库中的数据是用数据模型来表示数据 的结构,数据模型一般有以下三种。校部教务处科研处人事处各系师资科学籍科教务科。 。 。 。 。 。 。民生南方银河电冰箱洗衣机彩电商店:价格:商品:商店商品价格民生洗衣机2100南方电电冰箱1800银银河彩电电4700银银河电电冰箱1700 二维表的列称为字段 二维表的行称为记录 行列交叉处成为值 行和列的排列次序不重要关系数据模型关系数据模型一.关系术语1.关系:二维表 2.元组:记录。 3.属性:字段。 4.域:属性取值范围。 5.关键字:唯一标志记录。 6.外部关键字:在本表不是关键字,但是在另 外表中是关键字或者候选关键字。数据库的设计步骤:分析建立数 据库的目的确定数据 库中的表确定表中 的字段确定主 关键字确定表之 间的关系都属 于表 的设 计范 畴!需先分析为什么 要建立数据库以 及所建数据库应 完成的任务。确定表的原则: 1.每个表应该只包含 一个主题信息。 2.表中不应该包含重 复,并且信息不应该 在表之间复制。字段名命名规则: 1.长度1-64个字符。 2.可以包含字母、数字 、汉字、空格和其他字 符。 3.不能包括句号、感叹 号、方括号和重音号。例: 设计一个教学管理数据库,主要包括教师管理 、学生管理、学生选课管理,那么表的设计如下:数据类型(数据类型(AccessAccess)数据类型说明 文本型没有大小多少之意,是一个代号,最长255个字符 备注型和文本差不多,最长的字符个数可达64000个 数字型表示有“大小多少”的数值之意 日期/时间型表示时间/日期 货币型用于记录货币的数据类型 自动编号型每当增加一条记录,自动插入一个序号 是否型只有“Yes/No”、“True/False”、“On/Off”两种 值(布尔型) OLE对象型可以插入各种OLE对象(图像、声音等),最大1GB 超级链接型用来保存超级链接,操作为“插入”“超级链接” 查阅向导型1二进进制数据类类型二进制数据是一些用十六进制表示的数据。 二进制数据类型包括三种:binary、varbinary 和image。2整数数据类型整数数据类型有五种:bit、int、bigint、 smallint、tinyint。 数据类型(数据类型(SQL ServerSQL 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使用场合:n应用程序与数据库的通讯n通过DBMS或第三方工具,完成一些数据库的操 作任务,比如在数据库中更新数据,或者从数据库中 检索数据SQL命令分组 nDML(Data Manipulation Language,数 据操作语言):用于检索或者修改数据 nDDL(Data Definition Language,数据 定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象 nDCL(Data Control Language,数据控 制语言):用于定义数据库用户的权限 DML命令 nSELECT:用于检索数据 nINSERT:用于增加数据到数据库 nUPDATE:用于从数据库中修改现存的 数据 nDELETE:用于从数据库中删除数据 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 predicateALL,DISTINCT, DISTINCTROW,TOP nDISTINCT: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.SNOSelect a.*,b.CNAME,b.SCORE from Student a,Curse b where a.SNO=b.SNOwhere子句指定从表中获取哪些记录。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=90order by子句指定结果如何排序:升序:ASC;降序:DESC。Select * from student order by SNAMESelect a.SNO, a.SNAME, b.CNAME, b.SCORE from Student a,Curse b where a.SNO= b.SNO order by a.SNAME, b.SCORE DESCSQL的特殊操作 nIN 操作符 nLIKE 操作符 nSQL 的运算符及表达式 nSQL 的统计函数nBetween and 运算符nUnion 操作nINNER JOIN操作 in操作符 n用在where后,当同时查询多个条件时,用以简化写法Select * from student where SNAME in (李明,成功) 等价SQL语句:Select * from student where SNAME =李明 or SNAME =成功n多层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 () values () 例:增加新的成绩 Insert into Curse (sno,cname,score) values (870102,数据结构,75)insert into语句 向表中增加新的数据。 INSERT INTO () values () 例:增加新的成绩 Insert into Curse (sno,cname,score) values (870102,数据结构,75) 增加名单: Insert into student (sno,sname,sold,ssex,sclass) values (870203,王五,19,男,微机872)delete from语句 删除指定数据。 delete from where 例:从名单中删除王五Delete from student where sname= 王五 该语句将删除学生表中所有姓名为王五的记录 注意:Delete from student 将删除学生表中所有记录
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号