数据库技术与应用SQL Server 2005 复习版前六章重点复习笔记
SQL SERVER2005课程学习笔记
--insert into student values(2,'张三','2008-10-1',30)
--insert into student(name,tid,birthday,age) values('张三',2,'2008-10-1',30)
--数据删除
--语法:delete from 表名 where 字段名=字段值 {and|or} [字段名=字段值...]
,MDF,NDF,LDF)
四、表的创建、数据类型、主键的设置、默认值(getdate())、标识
五、关系和约束(唯一约束、主键约束、外键约束、非空约束、check约束)
主键约束:必须加在主键列上,唯一、非空
唯一约束:不能有重复
非空约束:该列值不允许有空值(=null)出现
check约束:限制某列的值在某一个范围段内
begin tran
--delete from Student where id > 20
--delete from Student where id in (1,3,7)
--commit
select * from Student
--rollback
--数据修改
a. ([age]>(0) AND [age]<(100))
b. name is not null and name <> ''
外键约束:必须作用在有父子关系的表上(至少是2张表)
六、索引(主键索引、唯一索引、一般索引。按存储方式分:聚集索引和非聚集索引) 索引的作用?加快数据查找的速度。
SQL Server2005 数据库应用教程
内模式
数据库
图1.2 数据库系统的模式结构
2021/7/1
8
1.2 数据模型
1.2.1 数据模型的组成要素
模型是现实世界特征的模拟和抽象。数据模型也是一种模型,它 是现实世界数据特征的抽象。数据模型通常都由数据结构,数据操作 和完整性三个要素组成。
• 1.数据结构 • 2.数据操作 • 3.完整性约束
4.数据库系统(Database System)
数据库系统是指在计算机系统中引入数据库后的系统,一般由数 据库、数据库管理系统、应用软件、数据库管理员和用户构成。
2021/7/1
4
1.1 数据库技术概述
用户 用户 用户
应用程序
数据库管理系 统 操作系统
数库管理员
数据库
图1.1 数据库系统组成
2021/7/1
从逻辑上来描述数据库全体数据的特征和逻辑结构的方法成为模 式(Schema)。它仅仅是指某一类数据的结构和属性的说明。
虽然实际的数据库管理软件很多,但是他们在体系结构上通常都 具有共同的特征,即采用了三级模式和两级映像。数据库的三级模式 结构是指外模式、模式和内模式三级结构。
1.模式(Schema)
2.文件管理阶段
文件管理的特点是数据可以长期保存,由文件系统管理数据, 数据的共享性差,冗余度大,数据的独立性差。
3.数据库和海量数据库阶段
数据库系统对数据的管理相对文件系统来说优点明 显,从文件系统到计算机用来管理数据库,标志着数据 管理技术质的飞跃。
2021/7/1
6
1.1.3数据库系统的模式结构
2.数据库(DATABASE)
数据库的定义,应该是长期存储在计算机内的,有组织的、可共 享的数据的集合 。
跟随郝斌老师学习SqlServer2005总结的笔记
一、数据库是如何解决数据存储问题的从三个方面来学习数据库a)数据库是如何存储的i.字段,记录,表,约束(主键,外键,唯一键,非空,check, default, 触发器) b)数据库是如何操作数据的i.Insert, update, delete, T-SQL, 存储过程,函数,触发器c)数据库是如何显示数据的i.select(重点中的重点)必备的一些操作d)如何建数据库i..mdf是数据文件.LDF是日志文件ii.右键-> 新建数据库-> 输入名字-> 确定e)如何删除一个库;如何附加和分离数据库f)设置登录用户名和密码;建用户用鼠标建立的第一个数据库Testg)nvarchar() 国际化编码的可变的字符串。
n表示国际化,对汉字也支持;var是变量,字符的长度是可变化的h),其中的dbo表示一个系统的身份i)j)k)当要选择是否可以为空时,用空格键来进行控制,即:可以用空格来选择l)PK,primary 主要的;FK, foreign 外部的通过sql命令建表和主外键约束m)在sql server里最后一句写不写逗号都可以,但是在oracle里不可以写逗号,因此在写命令时,最后一个字段的后面就不要写逗号了n)create table dept(--设置了非空dept_address nvarchar(100))create table emp( --这个是注释--此处给主键起了--一个名字,红字部分可以不写emp_name nvarchar(20) not null,emp_sex nchar(1),dept_id int constraint FK_dept_id_hd--在此处建立了一个外键,使用了references )约束o)约束的分类i.主键约束不允许重复元素,避免了数据的冗余(实体完整性)ii.外键约束通过外键约束从语法上保证了本事物所关联的其他事物一定是存在的(引用完整性)事物和事物之间的关系是通过外键来体现的p)check约束i.create table student{)在此处使用了check约束,限定了stu_sal的值在1000与8000之间ii.保证事物属性的取值在合法的范围之内q)default约束i.ii.保证事物的属性一定有一个值iii.create table student2(stu_id int primary key,是可以省略的,在数据库中字符串是--必须用’ ’括起来)insert into student2(stu_id, stu_sal) values (1, 1000)insert into student2 values (2, 5000, '女')--insert into student2 values (3, 10000) 这样写是不对的在此处,声明了三个属性,在第一个命令中,指定了二个属性,所以填入了两个值;第二个命令中,没有指定要填写几个属性,所以要填写全部的三个值;第三个命令中,没有指定要填写几个属性,不过只写了两个值,这是不对的r)unique约束(唯一约束)i.保证了事物的取值不允许重复,ii.create table student5(stu_id int primary key,stu_sal int check (stu_sal >= 1000 and stu_sal <= 8000),)insert into student5 values (1, 6000, '男', '张三') --此句话正确insert into student5 values (2, 6000, '男', '张三') --违反了唯一键约束,不正确insert into student5 values (null, 6000, '男', '王五') --主键不能为空,不正确insert into student5 values (3, 6000, '男', null) --唯一键可以为空iii.unique键是否允许多列为空?1.Sql Server 2012只允许一个unique列为空2.Oracle11G允许多个unique列为空s)主键和唯一键区别及其两者配合使用举例i.不要用业务逻辑作主键(编号不是一个事物的属性)ii.把编号(代理主键)当主键,iii.create table student6(stu_name nvarchar(50) not null unique,stu_email nvarchar(50) not null,stu_address nvarchar(50)--这一句是删除一个表在此处,identity是自增的意思;设定了一个编号当作主键,把用户名作为唯一键;通常不会删除一个用户,一般每个用户都有一个标识位,1或者0,如果注消一个用户的话可以把他的标识位改一个,就不能使用此帐户了t)not null(可以当作一个约束)和default的区别i.not null要求用户必须为该属性赋一个值,否则语法出错ii.如果有默认值,如果不指定要为哪一个属性赋值的话,必须为全部属性赋值iii.如果指定了为哪些属性赋值,有一个属性没在括号内且可以为空的话,这个值就是NULL;如果指定了为哪些属性赋值,有一个属性没在括号内且有默认值,那么这个值就是默认值表和约束的区别(他自己的理解)u)数据库是通过表来解决事物的存储问题的v)数据库是通过约束来解决事物取值的有效性和合法性的问题w)建表的过程就是指定事物属性及其事物属性各种约束的过程什么是关系x)定义:表和表之间的联系y)实现方式:通过设置不同形式的外键来体现表和表的不同关系z)分类:一对一,一对多,多对多aa)一对一:i.可以把表A的主键充当表B的外键,也可以把表B的主键当充当表A的主键bb)一对多:i.在多的一方添加外键cc)多对多:i.任何一个表都有一个主键,但不一定都有外键ii.多对多的关系需要另外一张表来表示(通常至少有两列)iii.--班级表create table banji(banji_id int primary key,banji_num int not null,banji_name nvarchar(100))--教师表create table jiaoshi(jiaoshi_id int primary key,jiaoshi_name nvarchar(200))--第三张表用来模拟班级和教师的关系create table banji_jiaoshi_mapping(kecheng nvarchar(20),)--删除表drop table banji_jiaoshi_mapping在第三张表里面,constraint fk_banji_id为banji_id这个外键设置了一个别名;foreign key references banji(banji_id)这句话,设置了一个外键,其中“一”的一方是banji里的banji_id;下面一条命令同样设置了一外键,不过是省略了外键的名字;最后一条命令设置了一个联合主键,设其名字为pk_banji_id_jiao_id,只能用这种方法来设置联合主键,不能一个一个地单独写主键;在第三张表里面,删除了这个关系表dd)数据库关系图的使用i.在一个库里右击数据库关系图,新建数据库关系图,选中要选择的表ii.在删除一个关系时,不会把属性同时删除iii.要放大和缩小关系图,Ctrl+鼠标滚轮iv.利用可以快速改变视图的位置主键的具体定义及注意事项ee)主键定义:能够唯一标识一个事物的一个字段或者多个字段的组合ff)主键特征:i.含有主键的表叫做主键表ii.主键通常都是整数,不建议使用字符串当主键(如果主键是用于集群式服务,才可以考虑用字符串当主键)iii.主键的值通常都不允许修改,除非本记录被删除iv.主键不要定义成id,而要定义成“表名id”或者“表名_id”v.要用代理主键,不要用业务主键1.任何一张表,强烈建议不要使用有业务含义的字段充当主键2.我们通常都是在表中单独添加一个整型的编号充当主键字段外键的具体定义及要注意的问题定义:如果一个表中的若干个字段是来自另外若干个表的主键或唯一键,则这若干个字段就是外键注意:vi.外键通常是来自另外表的主键而不是唯一键,因为唯一键可能为nullvii.外键不一定是来自另外的表,也可能来自本表的主键viii.含有外键的表叫外键表,外键字段来自的那一张表叫做主键表gg)问题:先删主键表还是外键表?先删外键表二、查询(顺序)计算列(scott库)select * from emp;select empno, ename from emp;;这里所写的sal*12是指把一个月的工资乘以12之后的结果;as在这里写不写都可以;年薪这里要写的是双引号,不要写其他的符号,值是5select 888 from emp;这里写888,查询出来的没有列名,输出的行数是emp表的行,每行只有一个字段select 5;这里写的5,查询出来的是没有列名,只有一个记录(不推荐这样写)在Oracle里不能通过注意:在Oracle但是SqlServer2012却允许,distinct(不允许重复的)的用法这里,distinct deptno会过滤掉重复的deptnodistinct也可以过滤掉重复的null,或者说如果有多个null,只输出一个把comm和deptnor的组合进行过滤select deptno, distinct comm from emp; 逻辑上有冲突select ename, * from emp; 这个在SqlServer里正确,在Oracle里不正确between(在某个范围)的用法select * from emp; 在这里,先执行from emp,知道要在哪个表里查找,然后执行select *,知道要找哪些数据查找工资在1500和等价于:查找工资小于1500或大于3000的所有的员工的信息select * from emp where sal < 1500 or sal > 3000; 等价于:select * from emp where sal not between 1500 and 3000in(属于若干个孤立的值)在emp表中取出sal为1500和3000的所有记录,等价于:emp表中取出sal既不是1500也不是3000的记录,等价于:在数据库中不等于有两种表示方式:!= <>推荐使用第二种对或取反是并且,对并且取反是或top(最前面的若干个记录,专属于SqlServer的语法,不可移植到其他数据库中)选出emp表中的前两个记录输出emp表中的前15%个,如果不是整数的话,就进位。
SQL Server 2005 复习
第一章小结SQL Server 2000是数据库产品, 而SQL Server 2005是一款整合数据库和数据分析服务的平台。
SQL Server 2005包含5个版本,分别适用于不用的用户群。
SQL Server 2005平台包括数据库引擎、分析服务、集成服务、复制、报表服务、通知服务、服务代理和全文搜索8个主要部分。
SQL Server 2005可以用于构建C/S或者B/S模式的数据库系统。
桌面型和网络型数据库的学习有本质的区别。
网络是基础,数据库是核心,两者缺一不可。
TCP/IP协议是SQL Server 2005网络的底层基础。
IP地址是网络中计算机惟一的身份证。
端口用于区分同一台物理计算机上的不同网络服务。
服务器的端口是静态的,客户机的端口是动态分配的。
知识点服务器和客户机物理(硬件)角度客户机(Client):指一些适合家庭和办公环境使用的PC。
这些PC上网的目的是享受各种网络服务,如电子邮件服务、网站浏览服务等。
服务器(Server):是指一些有别于普通用户使用的PC的特殊的计算机。
这些计算机在网络中提供各种网络服务。
为了适应大容量的数据存储和频繁的客户机的访问操作,这些计算机一般都配备有大容量的硬盘、24h不间断的UPS电源等高性能硬件设备,并具备可热插拔功能等。
逻辑(软件)角度客户机(Client):指一些安装了享受网络服务的软件的计算机。
服务器(Server):指一些安装了提供网络服务的软件的计算机。
桌面数据库与网络数据库Access2000(2003)、V isual FoxPro 6.0(7.0, 8.0)、Excel 2000(2003)小型数据库产品被称为桌面关系型数据库系统,其主要特点包括:广泛应用于单机环境。
计算机操作系统为桌面型操作系统,如Windows 98/XP等。
不提供或仅仅提供有限的网络应用功能。
没有或仅有较弱的安全方案。
开发的数据库应用系统主要目的是日常小型办公需要。
sql+sqlserver2005学习笔记
sql+sql server 2005学习笔记Sql+sql server 2005 学习笔记示例数据库(sample)表示的是一个公司及其包含的部门和员工。
每个员工只确切的属于一个部门,每个部门则可能含有一个或多个员工。
员工从事的工作则以所属的项目为中心,每个员工在同一时间可以为一个或多个项目工作,而从事每个项目的有一个或多个员工。
示例数据库由四张表组成:department、employee、project、works_on 1(SQL组件1.1SQL的基本对象常量或字面量(用’’或””)定界符(用””)标识符(字母,数字,_,@(变量),#(表名或存储过程的开头,表示一个临时对象),$)保留字注释(--或/**/)1.2数据类型数值型:整数值TINYINT 1字节SMALLINT 2字节INT 4字节BIGINT 8字节定点值DECIMAL(p,[s]) p总位数,s小数点后位数NUMERIC(p,[s]) p总位数,s小数点后位数浮点值REALFLOAT[(p)] p<25单精度(4字节),p>=25双精度(8字节)货币值MONEY 8字节DECIMALSMALLMONEY 4字节DECIMAL串型:字符串值CHAR[(n)] (定长) 0<n<=8000 1字节NCHAR[(n)] (定长) 0<n<=4000 2字节 Unicode字符 VARCHAR[(n)] (变长) 0<n<=8000 1字节NVARCHAR[(n)] (变长) 0<n<=4000 2字节 Unicode字符 TEXT[(n)] (定长) 1字节NTEXT[(n)] (变长) 2字节二进制串值BINARY[(n)] (定长) 0<n<=8000VARBINARY[(n)] (变长) 0<n<=8000IMAGE[(n)] (定长)BIT注:是过时特性,应该用新数据类型TEXT,IMAGEVARCHAR(MAX),NVARCHAR(MAX),VARBINARY(MAX)日期/时间型:DATETIME 4字节SMALLDATETIME 2字节例如:’28/5/1959’,’may 28,1959’,’1959 may 28’,’18:45 am’,’4 pm’派生型:TEMESTAMPSYSNAME混杂型:CURSOR 允许在存储过程中创建光标变量(不能把该数据类型用作表中列的数据类型)UNIQUEIDENTIFIER 以16个字节二进制串形式存储的唯一的标识号SQL_VARIANT 用来同时存储不同数据类型的值(唯一不能存储的数据类型是文本/ 图像类型和TIMESTAMP)TABLE 用来存储具有几个不同值的行(限制于:1.作为局部变量2.作为用户自定义函数的返回值)用户自定义型(UDT)1.3谓词定义了一种应用于表中行的逻辑条件,具有两个值(true,false)的常见逻辑条件在SQL语言中又进一步被扩展,加入了第三个值(unknow(未知的)或not applicable(不适用的))所有关系运算符BETWEEN运算符 IN运算符LIKE运算符NULL运算符ALL和ANY运算符 EXISTS函数1.4聚集函数一般应用于某列中的一组数据值(几多行),总是返回单个值。
SQLSERVER2005学习笔记
1.SQLServer2005系统表相信很多人都很奇怪SQLServer2005的系统表到哪去了,在使用SQL2000的日子里,不幸的SQL Server 2000数据库管理员们,需要浏览深奥的系统表,这是这项使用数据库管理系统的工作中最糟糕的一部分。
SQL Server 2005中的系统数据现在存储在隐藏的“资源”表中,这个表只能被服务器自身直接访问。
低级用户(和数据库管理员)必须使用新的一系列的分类视图,这些视图显示了从各种我们看不到也不能调用的隐藏表和各种隐藏函数中获得的数据。
以前版本的SQL Server 中的系统表现在作为一系列所谓的(也相当正确的)“兼容视图”的形式实现。
分类视图和它们的伙伴,动态管理视图(下面进行解释),代表了一种处理元数据的方式,这些元数据是完全重新设计和重新思考出来的。
没有了那些只会给数据库管理员一些底层数据的微小感觉的神秘的表,现在的SQL Server提供了丰富的资源:SQL Server 2005中有超过200个分类和管理视图,取代了以前版本中大约50个的系统表。
所有这些视图都可以在系统计划中找到。
(计划是在SQL Server 2005中大大扩展了的安全特性。
但是这是另一篇贴士的话题。
)要看到可用视图的完全列表,SQL Server Management Studio扩展了所有数据库的系统视图树。
或者通过T-SQL 从视图自身选择一个列表,并找出友好的易于理解的名字:sys.all_views有所有的视图sys.tables包含有所有表的信息sys.columns包含数据库中所有的列的属性等等,是不是比SQL2000系统表要更能让人接受?所以现在我们可以用一条这样的语句来查询某个表T_TT的所有字段的信息select * from sys.columns,sys.tables where sys.tables.object_id=sys.columns.object_id and ='T_TT'2.[SQL Server]SQL2005:向系统表说再见微软的SQLServer数据库管理员,快快想一下!在不使用任何的文档的情况下,编写一个查询,从SQLServer2000系统表中抽取索引的列表,然后列举每个索引中的字段,并判断这个字段是否按照升序或者降序进行排序。
SQL Server 2005复习资料 (6)
然只能删除视图里有显示的记录。
7.1.5 重命名视图
语法格式: sp_rename [ @objname = ] '对象名' , [ @newname = ] '新对象名' , [ @objtype = ] '对象类型' ] 【例7.5】重命名视图clanguageview为cview。 方法一:使用Management Studio视图设计器为视图重命
2.视图的作用
(1)定制数据 视图允许用户以不同的方式查看数据,用户可以像在表中那样在视图中控 制数据的显示,而把不需要的、敏感的或不适当的数据排除在视图之外,满足 了不同用户群对数据显示的需求。 (2)简化操作 视图可以简化用户操作数据的方式,隐藏数据库设计的复杂性,可将经常 使用的选择、连接、投影和联合查询定义为视图,方便用户查看数据;或者利 用视图存储复杂查询的结果,其他查询可以使用这些简化后的结果,从而提高 查询的性能。 (3)提供安全机制 视图在为用户定制数据的同时,也可以隐藏一些信息,从而保证了数据库 中某些数据的安全性。数据库的所有者可以不同授予用户在基表中的查询权限 ,而只允许用户通过视图查询数据,这也保护了基表的设计结构不被改变。 (4)改进性能 可以在视图上创建索引改进查询性能,视图也允许分区数据,分区视图上 的表位于不同的服务器上,可以并发地扫描查询所涉及的每个表,从而改进查 询的性能。 总结:针对不同用户的需求,通过规划多个视图,分类获取用户需求数据 ,是设计视图要达到的目标。
名
方法二:利用系统存储过程sp_rename为视图重命名。 sp_rename ‘clanguageview’,’cview’
7.1.6
显示视图相关性
【例7.6】为【例7.1】3]中修改好的视图clanguageview ,显示依赖关系。 方法:使用Management Studio视图设计器为查看视图依 赖关系
SQL Server 2005复习资料 (2)
3.2 SQL Server 2005数据库架构
●存储模式,是数据物理结构和存储方式的描述,是数据在数据库内部 的表示方式。一个数据库只有一个存储模式。 ●概念模式,是数据库中全体数据的逻辑结构和特征的描述。一个数据 库只有一个概念模式,它由数据库管理系统提供的描述语言DDL来定义 和描述。定义概念模式时,不仅要定义数据的类型、取值范围,而且要 定义数据之间的联系以及完整性、安全性要求。 ●用户模式,是数据库用据库用户的数据视图,是与某一应用有关的数据的逻辑 表示。
3.4 数据库的完整性定义
表3.11 学生基本信息表S约束
列名 学号 PRIMARY √ UNIQUE √ CHECK 由J开头,后面只能取0-9之间的数字,限5位。 FOREIGN
性别
电话
性别的值只能取‘男’或‘女’
电话的格式为021-7777
表3.12 课程数据表C约束
列名 课程号
课程名
PRIMARY √
3.3关系数据表结构定义
表3.8 学生基本信息表S
表3.9 课程数据表C
表3.10 学生选课数据表SC
3.4 数据库的完整性定义
完整性控制机制的使用,能够防止合法用户向数据库添加错 误数据,从而降低应用程序复杂性,提高系统易用性。 PRIMARY约束,主键约束标识具有唯一标识表中某一行的列 或列集;UNIQUE约束,唯一约束强制实施列集中值的唯一性; CHECK约束,通过限制可以放入列中的值来强制实施域的完整性
3.1 关系数据库设计思路 1.需求分析阶段
需求分析阶段的任务是收集数据库所需要的信息内容和数据 处理规则,确定建立数据库的目的。在需求分析调研中,必须和 用户充分讨论,确定数据库所要进行的数据处理的范围。 在需求分析的基础上,设计相应的数据库,并将数据信息分 割成数个大小适当的数据表。例如,通过需求分析,我们得到学 生选修课程的数据信息,如下表所示。
《SQL SERVER 2005高级应用》期末复习知识点
《SQL SERVER 2005高级应用》期末复习知识点Truncate TableTruncate是SQL中的一个删除数据表内容的语句,用法是:语法TRUNCATE TABLE name参数name是要截断的表的名称或要删除其全部行的表的名称。
下面是对Truncate语句在MSSQLServer2000中用法和原理的说明:Truncate table 表名速度快,而且效率高,因为:TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。
但 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。
DELETE 语句每次删除一行,并在事务日志中为所删除的每行记录一项。
TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据,并且只在事务日志中记录页的释放。
TRUNCATE TABLE 删除表中的所有行,但表结构及其列、约束、索引等保持不变。
新行标识所用的计数值重置为该列的种子。
如果想保留标识计数值,请改用 DELETE。
如果要删除表定义及其数据,请使用 DROP TABLE 语句。
对于由 FOREIGN KEY 约束引用的表,不能使用 TRUNCATE TABLE,而应使用不带WHERE 子句的 DELETE 语句。
由于 TRUNCATE TABLE 不记录在日志中,所以它不能激活触发器。
TRUNCATE TABLE 不能用于参与了索引视图的表。
对用TRUNCATE TABLE删除数据的表上增加数据时,要使用UPDATE STATISTICS 来维护索引信息。
如果有ROLLBACK语句,DELETE操作将被撤销,但TRUNCATE不会撤销。
1.SQL Server 2005的登录方式。
2.SQL Server 2005与其它数据库或EXCEL等软件之间的数据导入与导出。
3.SQL Server 2005中的系统表。
SQLserver2005学习笔记
数据库学习大纲目录数据库存储 (4)1.表的相关数据 (4)2.create table 命令 (4)3.什么是约束 (5)check约束 (5)default 约束 (5)唯一约束 (6)not null约束 (8)4.表和约束的异同 (8)5.什么是关系 (8)6.主键定义 (10)7.外键定义 (11)数据库查询 (11)1.计算列 (11)2.distinct【不允许重复的】 (12)3.between【在某个范围】 (12)4.in【属于若干个孤立的值】 (12)5.top【最前面的若干个记录专属于SqlServer的语法,不可移植到其他数据库】 (12)6.null【没有值空值】 (13)7.order by【以某个字段排序】 (13)8.模糊查询【搜索时经常使用】 (14)9.聚合函数【多行记录返回至一个值通常用于统计分组的信息】 (15)10.group by【分组难点】 (17)11.having【对分组之后的信息进行过滤难点】 (18)12.连接查询 (20)1.select ... from A, B 的用法 (21)2. select ... from A, B where ...的用法. (21)3. select ... from A join B on ... 的用法.. (22)4. select ... from A, B where ...与select ... from A join B on ...的比较.. (22)5. 习题集: (25)内连接复习小结: (27)查询的顺序 (29)13.外连接[参见ppt] (31)14.完全连接[参见ppt] (31)15.交叉连接[参见ppt] (31)16.自连接 (31)17.联合 (32)18.分页查询 (32)19.嵌套查询 (32)20.主键如何设置 (32)视图 (33)事务【重要参见ppt】 (35)分页查询 (36)什么是数据库SQL = = Structured Query Language结构化查询语言,第四代语言(1机器语言, 2汇编语言, 3 C系),主要用于对外存数据的存储和操作,由于其局限性(其中大多是命令),较复杂的功能实现不了,依赖于第三代语言来实现;第三代语言主要处理内存数据。
SQL SERVER2005数据库笔记
SQL SERVER2005数据库笔记基础部分Ⅰ第一章企业管理器1.1数据表的管理SQL Server2005的数据类型一个数据库可以存放很多张表,而一张表是由行和列组成,每一行表示一个实体,而每一列表示实体的属性。
表1.1 SQL Server2005的数据类型1.2数据的完整性数据的完整性包括数据的可靠性和数据的准确性,创建表保证数据的完整性,其实就是创建约束,所谓创建约束就是保证数据的可靠和准确。
在SQL Server2005中,数据的完整性包括:1.实体完整性指保证在一张表中不可以有两行完全相同。
2. 域完整性指保证一张表中的数据是合法的数据。
3. 引用完整性指保证一张从表中的某列来自于另外一张主表中的列。
1.3 创建约束1.主键所谓主键是指能够唯一的表示一列的列就叫做主键。
选择主键的原则:(1)尽量选择单个键作为主键(2)尽量选择值更新较少的列作为主键。
2.检查约束为了满足域完整性,可以通过设定检查约束来保证。
3.外键为了满足引用完整性。
所谓外键是指一张表(从表)中的一列数据必须取自于另外一张表(主表)中主键列的数据。
我们将这一列称之为外键。
当两张表存在主外键关系时,那么它们就具有以下特点:(1).当主表中没有对应的记录时,不能将记录添加到子表;(2).不能更改主表中的值,而导致子表中的数据孤立存在;(3).子表中如果存在与主表对应的记录,则不能从主表中删除该行;(4).删除主表前,应该先删除子表。
4.默认约束为某张表的某列添加默认值。
就是默认约束。
5.标识列标识列的值由系统生成一组有规律的数字。
7.唯一约束唯一约束用于指定一个或者多个列的组合值具有唯一性,以防止在列中输入重复的值。
唯一键允许为空,但是系统为保证其唯一性,最多只可以出现一个NULL值。
当使用唯一约束时,需要考虑两个因素:(1).使用唯一性的约束的字段允许为空值(2).一个表中可以允许有多个唯一性约束。
第二章查询分析器2.1 SQL和T-SQL2.2 创建数据库2.3 删除数据库删除数据库的语法如下:drop database T eacherGO2.4创建表其中,列的特征包括该列是否为空(NULL)、是否是表示列、默认值、主键等。
数据库技术与应用——sqlserver2005习题答案
第一章习题答案:一、(1)A(2)B(3)B二、1.需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、数据库物理结构设计阶段、数据库实施阶段、数据库运行和维护阶段2.逻辑独立性、物理独立性3.主属性、非主属性三、1.数据库技术主要经历了人工管理阶段、文件系统阶段、数据库系统阶段。
人工管理阶段的主要特点是:(1)数据不保存(2)应用程序管理数据(3)数据不共享(4)数据不具有独立性文件系统阶段的主要特点是:(1)数据可以长期保存(2)由文件系统管理数据数据库系统的特点是:(1)数据的管理者:DBMS(2)数据面向的对象:现实世界(3)数据的共享程度:共享性高(4)数据的独立性:高度的物理独立性和一定的逻辑独立性(5)数据的结构化:整体结构化(6)数据控制能力:由DBMS统一管理和控制2.数据(Data)是数据库中存储的基本对象,描述事物的符号记录。
数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合数据库管理系统(Database Management System,简称DBMS)是位于用户与操作系统之间的一层数据管理软件。
数据库系统(Database System,简称DBS)是指在计算机系统中引入数据库后的系统构成。
3.数据库系统的优点:是以数据为中心组织数据、减少数据的冗余,提供更高的数据共享能力,同时要求程序和数据具有较高的独立性,当数据的逻辑结构改变时,不涉及数据的物理结构,也不影响应用程序,这样就降低了应用程序研制与维护的费用。
第二章习题答案:一、1.A2.C二、1. SQL Server数据库引擎2.混合模式三、1. SQL Server 2005分发了4个主要的版本:工作组版、标准版、企业版和开发版。
主要有服务器组件、客户端组件、管理工具、开发工具、文档和示例2. SQL Server 2005在原有SQL Server 2000系统的基础上增加了一些新的功能和特性,主要表现在企业级数据库管理、开发人员能力和商业智能方面。
《数据库技术及应用》知识点总结精选全文
可编辑修改精选全文完整版《数据库技术与应用》知识点总结第一章数据库基础1.基本概念:数据:数据泛指对客观事物的数量、属性、位置及其相互关系的抽象表示,以适合于用人工或自然的方式进行保存、传递和处理。
数据是形成信息的源泉,信息是有价值的数据是数据的内涵。
信息:有一定含义的、经过加工处理的、对决策有价值的数据数据库:数据库是长期存储在计算机内、有组织的可共享的数据集合。
数据库管理系统(DBS的核心):专门用于管理数据可的计算机系统软件。
数据库系统:带有数据库的计算机系统,一般由数据库、数据库管理系统(及其开发工具)、相关硬件、软件和各类人员组成。
2.数据管理的发展阶段1.人工管理阶段:没有直接存储设备、操作系统、管理软件2.文件系统阶段:把计算机众多数据组织成相互独立的数据文件3.数据库系统阶段:一定的格式、统一管理、冗余度小4.分布式数据库阶段:物理上分离、逻辑上统一5.面向对象数据库阶段3. 数据模型:(1)基本概念:数据模型:数据库系统的形式框架,用来描述数据的一组概念和定义,包括描述数据、数据联系、数据操作、数据语义以及数据一致性的概念工具。
概念模型:按用户的观点对数据和信息进行建模,是现实世界到信息世界的第一层抽象,强调语义表达功能。
实体:客观存在的并且可以相互区别的“事物”实体集:性质相同的同类实体的集合属性:描述实体的特征域:属性的取值范围主键:用来唯一标识一个元组的某个属性或属性组合联系(1:1,1:n,m:n):实体集之间的关系,反应事物之间的相互关联,联系也是主体,也可具有属性关系模型:采用二维表来表示实体以及实体之间关系的模型。
本质是一张表。
关系、关系模式:1:1关系名(属性1,属性2,……)1:n 将1的主键放入n中学生(班级编号,……)n:m 将实体的主键放入关系的属性中(2)E-R模型:能根据具体问题构建E-R模型、画出E-R图实体集:矩形框属性:椭圆联系:菱形(3)关系模型的数据结构、关系的性质数据查询、数据插入、数据删除、数据修改关系运算:选择(减少个体保留所有属性)、投影(所有个体的部分属性)、联结(4)E-R模型转换为关系模型(5)关系模型的完整性(实体、参照、自定义)实体:主键不能为空参照:外键为空或在其担任主键的实体集中存在自定义:用户自己定义的语义要求第二章A ccess数据库与表的操作1. Access数据库设计的一般步骤2. 基本概念:Access数据库、表、记录、字段3. 使用表设计器创建表(1)字段名命名规则不能空格开头、不能用.!()[]、最长64个字符(2)字段类型:文本、数字、日期/时间、是/否、查阅向导(备选项中选择)(3)字段属性:字段大小、输入掩码(控制数据的输入)、有效性规则(规范、核查)、有效性文本(提示信息)、默认值、索引(搜索或排序的根据,加快查询速度)、必填字段(4)设置主键4.建立表间关系:关联字段、实施参照完整性5.表的复制、更名、删除6.数据的导入、导出第三章查询1.查询的概念和作用查询是根据查询条件从一个或多个表中获取数据的方法浏览、更新、分析数据2.选择查询使用条件从一个或多个表中检索数据,然后按所需顺序显示数据3.条件查询(1)查询条件的表示①条件的组合:and、or、not②取值范围的说明: >、<、>=、<=、<>between… and…In③条件不确定: like*(替代零个一个或多个任意字符)、?(任意单一字符)、#(任意一个数字)、[ ](替代方括号内任意字符)、!(替代方括号内字符以外的任意字符)、-(2)函数①统计函数(SUM,AVG,COUNT,MAX,MIN)②字符串函数(LEN,LEFT,RIGHT,MID)③日期函数(DATE,NOW,YEAR,MONTH,DAY)4.交叉表查询、重复项查询、不匹配项查询:特点、何时适用交叉:对数据库中表和查询进行分类统计,使用的字段必须来源于同一个表或查询重复:对某些怒有相同值得记录进行检索和分类,判断信息正确性不匹配:查找可能的遗漏,在一张表中有另一张表中没有4.参数查询在作为参数字段的条件行中,以[ ]括起与字段名不同的内容5.操作查询:生成表查询、更新查询、删除查询、追加查询第四章 SQL查询select-from-where、insert、update、delete,要求能读懂select:构成查询结果的属性列from:作查询的表where:查询条件insert:将子查询结果插入到指定的表update:数据更新,需要更新的表delete:删除字段数据定义:用于定义和修改基本表、定义视图和定义索引create(建立) drop (删除) alter(修改)数据操纵:用于表或视图的数据进行添加、删除和修改等操作 insert(插入)delete update数据查询:用于从数据库中检索数据 select数据控制:用于控制用户对数据的存取权利 grant(授权) revote(回收权限)第五章窗体1.窗体的概念和作用概念:通过灵活多样的控件使用构成了用户与数据库的交互界面,从而完成显示、输入和编辑数据等事物作用:可作为浏览、编辑、输入输出表或查询中数据的交互界面可作为组织、控制整个系统中对象的外观界面2.创建窗体的三种方法自动创建、窗体向导、设计视图3.窗体的构成窗体页眉、页面页眉、主体、页面页脚、窗体页脚4.窗体的控件(1)类型:结合型控件、非结合型控件、计算型控件(2)常用控件:文本框,命令按钮,列表框和组合框,标签,选项组,选项按钮,子窗体/子报表(3)常用属性:名称、标题记录源:窗体的数据来源,一般为表或查询控件来源:控件所显示数据的来源,通常是与控件结合的字段行来源:组合框、列表框的列表选项来源5.主/子窗体:主窗体内套有子窗体,便于在同一窗体中显示不同表中相关联的数据第六章报表1.报表的概念和作用:与窗体的功能比较、区别报表用于对数据库中的数据进行浏览、分析、汇总和输出;窗体用于浏览、编辑、输入、输出2.报表的构成:报表页眉、页面页眉、组页眉、主体、组页脚、页面页脚、报表页脚3.排序和分组报表中的数据(对最多10个字段分组)汇总项:可以添加多个字段的汇总,并且可以对同一字段执行多种类型的汇总分组间隔项:确定记录如何分组在一起,可以自定义标题项:更改汇总字段的标题,可以用于列标题还可用于标记页眉与页脚的汇总字段有/无页眉节选项:用于添加或移除每个组前面的页眉节4.标签报表:特点:在一页中显示多个标签,通过标签报表,用户可以查看到多个且数据格式相一致的标签。
数据库技术与应用SQL Server 2005 复习版前六章重点复习笔记
第一章一、数据管理技术的三个阶段(特点,填空题、选择题)1、人工管理阶段程序与数据是一个整体,一个程序中的数据无法被其他程序使用,因此程序与程序之间存在大量的重复数据。
特点:A程序之间不能共享数据;B程序复杂;C数据量小;D人工重复输入数据数据不保存。
2、文件管理阶段时期:20世纪50年代末到60年代中,计算机外存储器有了磁鼓和磁盘等直接存取设备;软件有了操作系统和文件系统;程序通过数据文件访问数据。
产生的背景:应用需求:科学计算、管理硬件水平:磁盘、磁鼓软件水平:有操作系统和文件系统处理方式:联机实时处理、批处理优点:易于长期保存数据;程序代码有所简化;缺点:数据冗余(重复)度较大程序对数据依赖性较强,程序应数据的组织方式而改变缺乏对数据的统一管理,数据的完整性和安全性无法保证3、数据库管理阶段由数据库管理系统对数据库中的数据进行统一的控制和管理特点A.此阶段将数据集中存储在一台计算机上,进行统一组织和管理。
B.数据真正实现了结构化C.数据的共享性高,冗余度低,易扩充D.程序和数据之间的独立性高E.数据安全性高F.数据由DBMS统一管理和控制二、数据库系统的组成(填空题)数据库系统是由计算机硬件系统、数据库、操作系统、数据库管理系统和有关人员组成的具有高度组织性的总体。
数据库:是数据的汇集,它以一定的组织形式存于存储介质上,能为多个用户所共享DBMS:是管理数据库的系统软件,它实现数据库系统的各种功能。
是数据库系统的核心。
DBA:负责数据库的规划、设计、协调、维护和管理等工作。
应用程序:指以数据库为基础的应用程序。
三、数据库系统的特点(选择题,下列除了哪个,其他都是数据库系统的特点)A.数据共享,并发和协调机制B.减少数据冗余C.具有较高的数据独立性D.增强了数据安全性和完整性保护四、数据处理的三个阶段现实世界(实体)---信息世界(概念模型)---机械世界(数据模型)简单---复杂实体:客观事物的真实反映。
SQL Server 2005数据库应用技术第1章 数据库技术概论
1.1 SQL Server数据库概述
1.1 数据库技术的 产生与发展 1.2 数据库系统 1.3 数据模型 1.4 关系数据库 基础知识 1.5 关系的规范 化理论 1.6 数据库的设 计方法 1.7 SQL Server 数据库概述 1.8 SQL和T-SQL 概述
1.1.2
数据管理技术的4个发展阶段
1.1 SQL Server数据库概述
1.1 数据库技术的 产生与发展 1.2 数据库系统 1.3 数据模型 1.4 关系数据库 基础知识 1.5 关系的规范 化理论 1.6 数据库的设 计方法 1.7 SQL Server 数据库概述 1.8 SQL和T-SQL 概述
1.1.1
数据与数据处理
1.数据和信息
1.1 数据库技术的 产生与发展 1.2 数据库系统 1.3 数据模型 1.4 关系数据库 基础知识 1.5 关系的规范 化理论 1.6 数据库的设 计方法 1.7 SQL Server 数据库概述 1.8 SQL和T-SQL 概述
1.1.2
数据管理技术的4个发展阶段
文件管理的缺点: (1)数据的共享性差、冗余度大,容易造成数据不一致 (2)数据独立性差 (3)数据之间缺乏有机的联系,缺乏对数据的统一控制 和管理
sqlserver2005个人复习笔记
end as 列名,.... from 表名 where 条件
select ... from 表名 where 列名>=/<=/....(select语句)
列名 in/not in(select语句)
{
......
}
类名.方法名();
sealed
枚举
public enum 枚举名
{
常量1=10,常量2,.....
}
枚举名.常量名
(int)枚举名.常量名
结构
public struct 结构名
{
字段
属性
方法
}
索引器
public 返回值类型 this[数据类型 参数名]
try-catch-finally throw new 异常类名(....)
第二章--第四章
类:
对象:
类名 对象名=new 类名()
对象名.字段名
对象名.属性名
对象名.方法名(.....)
class 类名
{
public 类名()
{
......
}
public 类名(.....)
public
值类型:int short long float double bool byte char 结构、枚举
引用类型:类、接口、string,数组
值类型-->引用类型:装箱
引用类型-->值类型:拆箱 (int)object
readonly
const
static
访问修饰符 static 返回值类型 方法名()
SQLServer2005 管理与开发复习总结
SQLServer2005 管理与开发复习总结一、数据库系统基础数据库就是长期存储在计算机内的、有组织的、可共享的数据集合。
具有集成性、共享性、海量性、持久性的特点。
数据库系统是由数据库(DB)、数据库管理系统(DBMS)、应用系统、数据管理员和用户构成的。
DBMS是位于用户与操作系统间的数据管理软件,它主要解决的问题是如何科学的组织和存储数据以及如何高效的获取和维护数据。
数据定义功能、数据处理功能、数据安全功能、数据备份功能。
DBA是全面负责数据库正常运转的高级人员,他们主要负责:决定数据库中的信息内容和结构,决定数据库的存储结构和存储策略,定义数据的安全性要求和完整性约束条件,监控数据库的使用和运行以及数据库的改进和重组重构。
数据模型常由数据结构、数据操作和完整性约束三个基本部分组成。
数据库领域常用的四种数据模型1、层次模型2、网状模型3、关系模型4、面向对象的模型。
(关系模型是目前最重要的一种数据模型,它使用的存储结构是多个二位表格,实体和实体间的联系都是用关系来表示。
元组是表中的一行,属性是表中一列,域是属性的取值范围,分量是元组中的一个属性值,一个关系对应一张表,关键字是唯一确定的的一个元组。
关系操作有选择、投影、并、交、差、除、连接等查询操作和增加、删除、修改操作。
关系操作主要特点是集合操作,操作对象和结果都是集合。
实体完整性、参照完整性和用户定义完整性)Microsoft SQL Server 是一种基于客户机和服务器的关系型数据管理系统,用来对存放在计算机中的数据库进行组织、管理和检索,它使用T—SQL语言在服务器和客户及之间传送请求。
SQL Server 是一种介于关系代数与关系演算之间的结构化查询语言。
SQL Server两种使用方式:联机使用方式,嵌入程序方式。
SQL Server 2005 的Internet的要求4.01 IIS5.0的版本。
SQL Server 2005两种身份验证,Windows验证和混合验证。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章一、数据管理技术的三个阶段(特点,填空题、选择题)1、人工管理阶段程序与数据是一个整体,一个程序中的数据无法被其他程序使用,因此程序与程序之间存在大量的重复数据。
特点:A程序之间不能共享数据;B程序复杂;C数据量小;D人工重复输入数据数据不保存。
2、文件管理阶段时期:20世纪50年代末到60年代中,计算机外存储器有了磁鼓和磁盘等直接存取设备;软件有了操作系统和文件系统;程序通过数据文件访问数据。
产生的背景:应用需求:科学计算、管理硬件水平:磁盘、磁鼓软件水平:有操作系统和文件系统处理方式:联机实时处理、批处理优点:易于长期保存数据;程序代码有所简化;缺点:数据冗余(重复)度较大程序对数据依赖性较强,程序应数据的组织方式而改变缺乏对数据的统一管理,数据的完整性和安全性无法保证3、数据库管理阶段由数据库管理系统对数据库中的数据进行统一的控制和管理特点A. 此阶段将数据集中存储在一台计算机上,进行统一组织和管理。
B. 数据真正实现了结构化C. 数据的共享性高,冗余度低,易扩充D. 程序和数据之间的独立性高E. 数据安全性高F. 数据由DBMS统一管理和控制二、数据库系统的组成(填空题)数据库系统是由计算机硬件系统、数据库、操作系统、数据库管理系统和有关人员组成的具有高度组织性的总体。
数据库:是数据的汇集,它以一定的组织形式存于存储介质上,能为多个用户所共享DBMS:是管理数据库的系统软件,它实现数据库系统的各种功能。
是数据库系统的核心。
DBA:负责数据库的规划、设计、协调、维护和管理等工作。
应用程序:指以数据库为基础的应用程序。
三、数据库系统的特点(选择题,下列除了哪个,其他都是数据库系统的特点)A. 数据共享,并发和协调机制B. 减少数据冗余C. 具有较高的数据独立性D. 增强了数据安全性和完整性保护四、数据处理的三个阶段现实世界(实体)---信息世界(概念模型)---机械世界(数据模型)简单---复杂实体:客观事物的真实反映。
可以是实际存在的对象、抽象概念或事件,或者事物间的联系。
属性:将事物特性称为实体属性。
例如,为描述一个职工:编号、姓名、性别、出生日期值域:每个属性的取值范围叫做值域。
实体型和实体值的区别实体型:实体的结构描述,通常是实体名和属性名的集合;具有相同属性的实体,有相同的实体型。
教师实体型是:教师(编号、姓名、性别、出生日期、职称、基本工资、研究方向)实体值:一个具体的实体,是属性值的集合。
如,教师“李亦光”的实体值是:(15031,李亦光,男,09/21/65,教授,678,数据库技术)属性型和属性值的区别属性型:属性名及其取值类型。
例如:(姓名,字符型);(年龄,数值型)属性值:属性在其值域中所取的具体值。
例:“103601”编号值;“李晓光”姓名值;“男”性别值。
实体集:性质相同的同类实体的集合称为实体集。
如一个系的教师。
实体间的联系类型:一对一联系记为1 :1:如学校与校长间的联系一对多联系记为1:n:如宿舍房间与学生的联系多对多联系记为m :n:如一个教师可以教授多个学生,而一个学生又可受教于多个教师5、概念模型---E-R模型(画图题,看例子,书本page39)反映实体之间联系的概念模型用途:概念模型用于信息世界的建模现实世界到机器世界的一个中间层次数据库设计的有力工具数据库设计人员和用户之间进行交流的语言六、三种数据模型1、层次数据模型(层次清晰、构造简单、易于实现)1) 有且仅有一个根结点2) 每个非根结点有且仅有一个父(直接上层)结点3) 它最适合表示实体的一对多联系。
2、网状数据模型(复杂、不稳定、用指针维持)1)网状数据模型可能有多个根结点2)某些非根结点可能有多个父结点3)适合表示实体的多对多联系3、关系数据模型(逻辑结构=二维表)1) 建立在严格的数学概念的基础上2) 概念单一,数据结构简单、清晰,用户易懂易用3) 实体和各类联系都用关系来表示。
4) 对数据的检索结果也是关系。
5) 具有更高的数据独立性,更好的安全保密性6) 简化了程序员的工作和数据库开发建立的工作7) 查询效率往往不如非关系数据模型8) 为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度第二章1、关系数据库基本概念(考概念)关系:一个关系就是一张二维表,通常将一个没有重复行、重复列的二维表看成一个关系,每个关系都有一个关系名。
元组:二维表每行在关系中称为元组。
一行描述现实世界一个实体,或描述不同实体间联系。
属性:二维表的每一列在关系中称为属性。
每个属性都有一个属性名,各个属性的取值称为属性值,每个属性有一定的取值范围,称为值域。
关键字:关系中能唯一区分、企鹅顶不同元组的属性或属性组合,称为该关系的一个关键字。
关键字可能不是唯一的,凡是能唯一区分不同元祖的属性或者属性的组合,成为候选关键字。
在候选关键字中选定一个作为关键字,称为该关系的主键或者主关键字外部关键字:关系中某个属性或者属性组合并非关键字,但却是另一个关系的主关键字。
表示两表之间的关系。
2、关系数据库基本特征1、坚实的理论基础2、数据结构简单、易于理解3、对用户提供了较全面的操作支持4、得到了众多开发商的支持3、函数依赖的基本概念(与范式有关概念全部要掌握,ppt例子)第一范式:当关系模式R的所有属性都不能分解为更基本的数据单位时,称R是满足第1范式的,简记为1NF。
例如,如果关于员工的关系中有一个工资属性,而工资又由更基本的两个数据项基本工资和岗位工资组成,则这个员工的关系模式就不满足1NF。
依赖(决定)设R=R(A1,A2,…,An)是一个关系模式(A1,A2,…,An是R的属性),X∈{ A1,A2,…,An },Y∈{ A1,A2,…,An },即X和Y是R的属性子集。
在关系模式R中,如果当属性集X的取值确定后,属性集Y的取值也唯一确定,则称X决定Y,或称Y函数依赖于X。
记为:X→Y。
完全依赖(部分依赖)R,X,Y如定义如前,如果X→Y成立,但对X的任意真子集X1,都有X1→Y不成立,称Y完全函数依赖于X,否则,称Y部分函数依赖于X。
传递依赖设X,Y,Z是关系模式R的不同属性集,若X→Y(并且Y→X不成立),Y→Z,称X传递决定Z,或称Z传递函数依赖于X。
关键属性和候选关键属性设关系模式R(A1,A2,…,An),A1,A2,…,An是R的属性,X是R的一个属性集,如果① X→(A1,A2,…,An),② 对于X的任意真子集X1,X1→(A1,A2,…,An)都不成立,则称属性集X是关系模式R的一个候选关键属性。
如果关系模式R只有一个候选关键属性,称这惟一的候选关键属性为关键属性,否则,应从多个候选关键属性中指定一个作为关键属性。
候选关键属性=候选关键字,关键属性=关键字。
主属性和非主属性设Ai是关系模式R的一个属性,若Ai属于R的某个候选关键属性,称Ai 是R的主属性,否则,称Ai为非主属性。
第二范式:如果关系模式R满足第1范式,并且R的所有非主属性都完全依赖于R的每一个候选关键属性,则R满足第二范式,简记为2NF数据库表中不存在非关键字段对任一候选关键字段的部分依赖(部分依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖于任意一组候选关键字。
如果关系模式R满足第1范式,并且R的任意候选关键属性都只含有单个属性,那么R满足第二范式第三范式:设R是一个满足第1范式条件的关系模式,如果R的任意非主属性X非传递依赖于R的任意一个候选关键字,称R满足第3范式,简记为3NF。
数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖则符合第三范式。
若关系模式R符合3NF条件,则R一定符合2NF条件。
4、关系模型的完整性约束1、实体完整性(横)2、域完整性(列)3、参照完整性5、 E-R模型转到成关系模型1、独立实体----关系模型2、 1:1 两个关系3、1:n 做法:实体表中增加一个属性,将对方的关键字作为外部关键字即可。
属性多的表建立外键4、m:n 建立三个表第三章1、 SQL Server四个版本企业版:支持所有功能,多用于大中型产品数据库服务器;安装在服务器操作系统标准版:适用于小型的部门级应用,支持大部分功能,但不具备数据仓库的功能;安装在服务器操作系统个人版:除事务复制功能外,支持所有标准版的特性;安装在个人操作系统开发版:适用于应用程序开发的版本,虽然功能齐备,但仅被授权作为开发和测试系统;安装在任何操作系统2、 SQL Server常用工具、功能1、服务管理器:一个图形化的管理工具,用来启动、暂停或停止sql 的服务器组件的运行。
a.SQL Server服务:接受来自客户端的请求,提供对实例数据库的访问操作,由数据库引擎完成b.SQL Server Agent服务:调度定期执行的活动,实现数据库系统的定时与自动管理c.DTC(分布式事务处理协调)服务:协调分布式事务的正常执行d.Microsoft Search服务:全文检索服务2、企业管理器:SQL Server最主要的管理工具;对所有SQL Server对象的建立与管理都可通过它来完成a.企业管理器工作界面b. SQL Server服务器的配置 c .sa账号密码的设定3、查询分析器:提供了一个交互式的执行Transact-SQL语句的环境a执行SQL语句 b输入指定表的数据 c控制查询结果的显示方式d将输入的SQL语句保存成文件 e对象搜索3、 SQL语言的发展与特点SQL是一种使用关系模型的数据库应用语言。
1986年成为关系数据库语言的美国标准,1987年成为国际标准,成为SQL86,SQL不断进行更新,有不同的版本,主流的关系数据库都基于SQL开发,并对其进行了扩充按照其实现的功能可以将SQL划分为:数据查询语言(DQL):按一定的查询条件从数据库对象中检索符合条件的数据。
数据定义语言(DDL):用于定义数据的逻辑结构以及数据项之间的关系。
数据操纵语言(DML):用于更改数据库,包括增加新数据、删除旧数据、修改已有数据等。
数据控制语言(DCL):用于控制其对数据库中数据的操作,包括基本表和视图等对象的授权、完整性规则的描述、事务开始和结束控制语句等。
4、Transact -SQL语言是实SQL Server的核心组件,增加可编程性和灵活性,是用户使用SQL Server 2000的另一种方式T-SQL对SQL的扩展主要有:1、增加了流程控制语句。
2、加入了局部变量、全局变量等许多新概念,可以写出更复杂的查询语句。
3、增加了新的数据类型,处理能力更强。
第四章1、数据库文件1、数据文件存放数据和数据库对象的文件。
一个数据库可有多个数据文件,每个数据文件只属于一个数据库。