经过两周的时间作为初学者的我终于将数据库的视频都看完了,虽然每个视频的时间都在10分钟左右,但是由于视频的总集数加起来达到了惊人的200多集,再加上我们都知道如果长期的看一个技术类型的“电视剧”,我们的眼睛和脑袋是会有点儿不能接受的,所以自己还是花费了很长的时间才将这个项目完成,下面给大家分享一下自己看完视频的总结。
第一章:主要是对数据库的基本概念和数据库的安装与卸载的一个讲解。下面是一些视频中的重要词汇。
数据库模型:层次模型、网状模型、关系模型
范式理论:第一、二、三、四、五范式以及BCNF范式
E-R数据模型(实体—联系数据模型)
SQL Server2008由数据库引擎、报表服务、分析服务、集成服务构成。
第二章:主要是对SQL Server2008所具有的功能工具的讲解。
关键词:Management Studio 作为开发环境
联机丛书可以给我们提供各种详细的功能介绍
SQL Server配置管理器是非常重要的辅助工具
第三章:对数据库的修改和删除以及数据库的分离、附加和收缩,最后还有数据库快照的建立。
修改 | alter database 数据库名称 |
删除 | drop database |
收缩 | 对数据库内存进行缩小 |
创建数据库快照:
create databasestudentinfo_snap
On
(name=学生成绩管理系统,filename=’路径\创建的文件名称_1.mdf’)
(name=学生成绩管理系统_data_2,filename=’路径\创建的文件名称_2.mdf’)
Assnapshot of 学生成绩管理系统
第四章:主要对数据库中具体的表的进行操作性讲解和对数据的类型分析。
1、字符型数据类型,掌握Varchar和Char的区别
2、临时表的概念和分类及创建
3、具体表的操作
增 | Alter table 表 Add 数据 |
改 | Alter column 数据 |
删 | Drop colunm 数据 |
4、具体规则的操作
创建 | Creat rule 名 As 具体变量规则 |
保存 | Sp_bindrule 名称 |
解除 | Sp_unbindrule 名称 |
删除 | Drop rule 数据 |
5、数据库关系图:先找主表,再来推演分表。
第五章:对数据库中视图、索引和架构的创建、修改和删除。
1、视图
创建 | Creat view 名称 as 具体要求的数据库 |
改 | Alter view 名称 as |
删 | Drop view 名称 |
2、索引的分类(一个聚集索引,多个非聚集索引)
创建:creat nonclusterd index 名称 as 表名
第六章:数据库中各种简单查询和插入语句。
1、前五集视频可以归纳为一句代码语句如下:
Select 课程编号,avg(分数) from 成绩信息 where 考试编号= ‘0801’ and
Group by 课程编号
注释:从成绩中查询出考试编号=0801考试成绩算出他们的平均分再根据课程编号进行
分组。此外Order by 用来排序
2、插入语句: inser into学生信息(学号,姓名,性别,家庭住址)VALUES(‘2009100102’,
李雷’,‘男’,‘河南郑州’)
3、update 和 compute要和select语句结合起来来运用。
第七章:数据库中各个表之间的连接和组合查询方式。
1、连接的重点在于找到两个表或者多个表之间建立连接的点。
2、左外连接和右外连接的区别在与主表是谁,两者之间是可以相互转化的。
3、自连接时要注意再重新的给自身一个虚拟的名称以便区分。
4、联合查询注意Union的使用,子查询注意查询之间的嵌套。
5、交查询是本章较难理解的知识点,特以例子说明:
某任课老师的学生成绩与整个年级的前十名进行相交,查看是否存在交集, 代码如下:
Selecta.成绩编号,a.分数,b.姓名, from 成绩信息 a,学生信息 b
Where a.学生编号=b.学号 and a.课程信息=2 and a.考试编号=‘08011’
INTERSECT
Selecta.成绩编号,a.分数,A.姓名 from
(
Select a.成绩编号,a.分数,b.姓名, from 成绩信息 a,学生信息 b
Wherea.学生编号=b.学号 and a.考试编号=‘08011’ order by a.分数 DESC
)A
这里设置子查询的原因是因为orderby是对交集后的结果进行排序,在这里排完序之后的前十名再与该老师的学生相交得出结果。
6、差查询则是指查询的第一个集减去第一个和第二个相交的结果剩下的数据就是差查询的过程。 关键字 except
第八章:对Transact-SQL编程语句中各种固定语句的描述性讲解。
1、T-SQL语句中的if语句、case语句、while语句与VB中的用法基本相同,不同的是它在循环语句的前部和尾部有 begin 和 and来作为结束。
2、在表值语句的讲解中有一个比较经典的例子如下:
查询总公司下的全部子公司的名称(包括总公司的名称)
Declare @i int
Set @i =(select fleve1 from department where fitemID=@ID
Insert into @t select fitemID,fparentID,flevel from department
Where fitemID
While @@rowcount<>0
Begin
Set @i=@i+1
Insert into @t
Select into @t
Select
a. fitemID,a.FparentID,a.fievel
from
department a,@t b
where
a. fparentID=b.fitemIDand b.level=@i-1
end
return
end
比较经典的例子,但是很难理解,其中: level=@i-1 是为了减少重复的子集公司名称。如果不是很理解的可以再重新看一下8.12视频。
3、关于时间的语句
延迟语句:Waitfordelay ’00:00:05’———时间段;Waitfor time ’21:11:30’ ——跟时间点但是可以达到相同的结果
显示当前时间print getdate() 显示当前时间 printyear(getdate()) 当前年份,其他类似。
4、在数据库的建立过程中我们可能会需要很多的函数,但是有些我们需要的函数是数据库本身不曾具有的,所以我们可以通过自定义函数来建立我们需要的函数,这里的标量值函数和表值函数就是如此,通过它们的建立来简化过程。
5、事务的嵌套,通过建立需要的事务再对事务进行判断,来判断事务的进程(这里有提交事务和回滚事务两种选择)。
第九章:对存储过程的创建和增删改查的讲解
1、
创建 | Creat proc 名称 as |
调用 | Exec名称 |
修改 | alter 名称 |
删除 | Drop 名称 |
嵌套 | 就是将另一个存储过程作为条件来使用 |
查看 | Exec 名称 |
第十章:触发器的分类、创建、管理、嵌套和递归。
1、触发器是一个在修改指定表中的数据时执行的存储过程。有DDL和DML两种。
2、在这一章的学习中虽然学习的内容很多,但是它们之间存在的联系很大,delete触发器、updat触发器、DDL触发器的建立思路大致相同,只是在关键词的地方有些不同。下面我们以创建DDL触发器为例来讲解:
Creattrigger T_notdelete
On database或者all server
For drop_table,alter_table
As
Print’事务不能被处理,基础数据不能被修改和删除!‘
Rollback
其中蓝色部位为关键词,只需要将不同触发器的关键词放在该位置就行了。
3、嵌套触发器思路:通过删除触发向一个新表中插入数据,再通过插入触发更新触发器。递归触发器则是多个触发器触发一个事务。
第十一章:SQL Server数据库的不同连接方式。
11.1 安全机制分为五个安全等级
11.2 SQL身份验证 Windows模式不用重复的输入密码,混合模式则都可以适用。
11.3创建Windows登录账户,既是再重新添加一个登录名。
11.4 创建SQLserver登录账户 登录名只能登录相关的映射,别的无法查看。
11.5 创建数据库用户 在具体的数据库中的用户下面添加用户,但是只能打开本数据库
11.6 固定服务器角色 只能访问系统数据库,不能访问自定义的数据库
11.7 固定数据库的角色 数据库的角色不同导致的对数据库的权限能力就不一样。
11.9 应用程序角色 通过利用应用程序角色来给没有权限操作的数据库进行相关的操作。
第十二章:备份的重要性
备份有三种不同的模式;备份设备是创建完整备份的前提;利用时间点恢复的日志文件能够记录时间,来让它精确地恢复到相应的位置节点上。
前十二章的侧重点在于能够让我们利用T-SQL语句进行简单的数据库和操作,而十三章到二十一章则侧重于让我们利用SQL2008的辅助工具进行界面化的操作来实现我们目的,在这里自己就不赘述了。