数据库概念
第一章
存放数据的地方
数据库模型
层次模型
网状模型
关系模型
第一范式:每一列都是不可分割的基本数据项,同一列不能有多个值,实体中的某个属性不能有多个值或者不能有重复的属性。
数组的每个属性只能包含一个值
关系中的每个数组必须包含相同数量的值
关系中的每个数组一定 不能相同
第二范式:满足第一范式,而且该数据表中的任何一个非主键字段的数值都依赖于该数据表的主键字段。(负责人部门)
第三范式
满足第二范式,而且该数据表中任何两个主键字段的数据值之间不存在函数信赖关系。
E-R 模型
实体—联系数据模型
第二章
Management Studio 的讲解
模板资源管理器
联机丛书
配置管理器
第三章
数据库的组成
表
视图
储存过程
触发器
用户与角色
其他数据库部分
创建数据库
工具创建数据库
使用语句创建数据库
CREATE DARABASE database_name
查看数据库状态(点击数据库查看属性)
查询语句sp_helpdb
修改数据库
例子:
ALTER DATABASE 学校教务管理系统 MODIFY NAME =教务管理系统
删除数据库
DROP DATABASE 教务管理系统
分离和附加数据库
分离数据库
附加数据库 数据文件和日志文件
收缩数据库
数据库快照 数据库拍照,数据表中的数据
优点 维护历史数据以生成报表。
将查询实施再数据库的快照上,可以释放主题数据库上的资源
加快恢复操作效率。
创建数据库快照
用快照还原数据库,快
create database 数据库快照名称
复制数据库
第四章
字段的数据类型
数字数据类型
decimal 和mumeric 高精度小数类型
money 和smallmoney 存放货币
float和real 浮点
bit 位 0和1
字符数据类型
char()固定长度 不够也占用
varchar () 按实际占用
text 大容量文本
Nchar 所有字符都以2个字节计算
Nvarchar
Ntext
日期和时间数据类型
datetime 和 smalldatetime
专用数据类型
创建数据表
create table
创建临时表:临时创建的、不能永久保存的表。
本地临时表# 全局临时表##
设置标识字段
标识规范 表 随机生成员工编号
使用默认值
设置默认或绑定 所任职位 普通职员
创建约束
创建约束表达式 年龄>15 AND 年龄<65
修改表
设计
exec sp_rename
定义用户自定义数据类型
数据库 可编程 类型 用户定义数据类型
使用规则
创建规则
解除和删除规则
sp_unbindrule objectname
数据关系图
第五章
创建视图
修改和删除视图
ALTER VIEW name as select statement
通过视图修改数据
索引概述
是一个单独的物理的数据库结构,它是某个表中一列或者若干的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。
最大优点,加快数据检索速度。 还有 数据的唯一,还有加快表与表之间的连接速度。
创建索引
第一种 操作方式
第二种 用sql 语句创建,CREATE index
管理索引
全文索引和目录
右击表 全文索引 向导
索引 聚集索引和非聚集索引
只能一个 聚集索引确定表中数据的物理顺序。
非聚集索引 多个 数据在一个位置,索引储存在另外一个位置,索引带有指针指向数据的存储位置。
创建架构
安全性 架构
修改和删除架构
右击设计 打开属性窗口 架构 dbo 更改 选择admin
架构属性 权限
第六章
简单的SELECT 语句
select * from 学生信息
select 姓名 from 学生信息
设置查询条件
select * from 学生信息 WHERE 姓名=‘张苗苗’
排序
order by 分数 asc 升序(desc降序)
分组
group by cube(都平均)和rollup(不都平均)
使用函数
avg max min sum top
使用HAVING子句
再添加筛选条件
插入数据
insert into table _or_view {(column_list)} VALUES data_values
insert into 学生信息 values ('20091000101','李明','男')
insert...select 语句
insert 学生信息1
select * from 学生信息
select...into 语句
select *
into #student
from 学生信息
where 性别='男'
多个表中获取,存在一个临时表
update语句
select * from 学生信息
update 学生信息 set 姓名='李俊' where 学号='165411645'
在update 语句使用from 子句
select * from studentinfo
update studentinfo set s sex=b.姓名,s_address=b.家庭住址
from studentinfo a join 学生信息 b on a .s_name =b.姓名
delete
delect from
top 关键字和top 表达式
使用数值或者是百分比
select top 10(percent百分比) * from 成绩信息
update top (6)学生信息 set 民族='满族'
compute子句
使用数据函数用
select * frim 成绩信息 where 课程编号=2
compute sum(分数),AVG (分数)
在where子句使用运算符
select * from 成绩信息 where 考试编号='0802' amd (分数 between 90 and 95)