数据库复习

这篇博客详细介绍了数据库的基础知识,包括数据库(DB)、数据库管理系统(DBMS)、数据库系统结构、数据库完整性约束、SQL Server的使用、数据库文件存储、数据类型、表的创建与修改、索引的创建与删除、事务处理、批处理以及游标和存储过程的概念。内容涵盖了从数据库的定义到实际操作的各个方面,是学习数据库管理的一份全面参考资料。
摘要由CSDN通过智能技术生成

第一章

1.数据库(DataBase,DB)长期存储在计算机内的、有组织的、可共享的数据集合。

2.数据库的优点: 具有可共享性;             

                              具有较小的冗余度;

                              较高的数据独立性和易扩展性;

                               据库中的数据具有完整性。

3. 数据库管理系统(DBMS):是位于用户和操作系统之间的一层数据管理软件。

主要功能:数据定义功能(DDL);           

数据操纵功能(DML);

数据库的运行管理;           

数据库的建立和维护功能.

4. 数据库系统结构分为三层:内模式、概念模式(模式)(仅有一个)和外模式;

5. 数据库的二级映象:外模式/概念模式映象,概念模式/内模式映象;

6.数据库系统用户结构:单用户、主从式结构、客户-服务器结构、分布式结构;

  1. 一个关系就是一张二维表,由行和类组成;行:元组/记录,列:字段/属性

8.关系数据库设计:(1)需求分析;(2)概念结构设计(工具E-R模型);

   (3)逻辑结构设计;(4)数据库表的优化与规范化(至少满足前三范式)。

9.实体之间存在的关系:一对一联系、一对多联系、多对多联系

10.关系数据库的完整性

 (1)实体完整性约束(primary:是主关键字段中的诸属性值不能取空值;

2唯一性约束(unique:是在约束的字段上不能有相同值出现。

3 参照完整性约束(foreign:要求外关键字的值必须来源于被参照关系表的取值或为空值。(和实体完整性一起用)

4 检查(check)和缺省值(default)约束:是针对某一具体关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求。

第二章

1.SQL Server是一种基于客户-服务器的关系型数据库管理系统,使用Transact-SQL传送请求和服务,将所有工作分解为客户机任务和服务器任务,由两者分别完成。

2.登录模式Windows身份验证模式、混合模式;

3.分离数据库sp_detach_db  数据库名

附加数据库:sp_attach_db  [ @dbname = ] '数据库名' , [ @filename1 = ] '包括路径的数据库文件的物理名称' [ ,...16 ]。

第三章

1.数据库在磁盘上以文件为单位存储,由数据文件和事务日志文件组成

数据库文件(Primary Database File)(有一个文件扩展名.mdf

次数据库文件(Secondary Database File)(有的数据库可能没有,扩展名.ndf)

事务日志文件(至少一个,扩展名.ldf)。

2. 数据文件存储的基本单位是页,页的大小是 8 KB,数据库每兆字节有 128 页,每页的开始部分是 96 字节的页首,首页页码为零。

3. 每个 SQL Server 实例有四个系统数据库

master由系统表组成,记录了安装以及随后创建的所有数据库的信息,不允许任何人对它进行修改。必须经常保留一份它的当前备份的拷贝。

model记录了用户创建的所有临时表、临时数据和临时的存储过程,重新启动,该数据库被重新创建而不是恢复

tempdb是建立新数据库的模板,严格禁止删除model数据库

msdbSQL Server Agent服务使用的数据库

1.创建数据库  create database 数据库名

create database 图书管理系统

  修改数据库:alter database 数据库名

  删除数据库:drop database数据库名

第四章(表创建、修改

1. SQL Server表的类型永久表和临时表

永久表:创建后一直存储在数据库文件中,直到用户删除为止。

临时表分两种:

本地临时表:表名前加#符号:只能由创建它的用户使用,在该用户连接断开时,它被自动删除。

全局临时表:表名前加##符号:当前所有连接用户都可以使用,它在最后一个会话结束时被自动删除。

系统根据表名前有无#符号确定创建的是临时表还是永久表。

2.数据类型中只有字符串可以在后面加长度.

3.创建表用到的约束:

空值约束(null 或 not null           主键约束(primary key constraint)

唯一性约束(unique constraint)        检查约束(check constraint)

默认约束(default constraint)          外部键约束(foreign key constraint)

主键:constraint 约束名 primary key(列名)

外键:constraint 约束名 foreign key(外键列名)  references 借助的表(借助的列)

检查约束:constraint 约束名 check (列名 like’[][][]’)

默认约束:default

Eg: 主键:constraint  PK_选课表_学号_开课号 primary key(学号,开课号)

  外键:constraint  FK_选课表_学号foreign key(学号)  references 学生表(学号)

 检查约束:constraint CK_选课表_学号 check (学号like’s[0-9][0-9][1-9]’)

默认约束:性别 char(7)  default ‘男’

  1. 修改表:

增加一个字段:alter table 表名

                Add 新列名 数据类型 约束

修改数据类型属性的长度:alter table 表名

                            Alter column 字段名 数据类型

新增加的字段不能定义为not null ,可以有约束

Eg: 增加“年龄”属性,其类型为整型,取值为13-70

alter table 学生表

    Add 年龄 int constraint  CK_学生表_年龄 check(年龄>=13 and 年龄<70)

删除表中某个属性列:

删除约束:alter table 表名 drop constraint 约束名

删除某个属性:alter table 表名 drop column 字段名

Eg: alter table 学生表 drop constraint PK_选课表_学号

   Alter table 学生表 drop  column 学号

注:删除有约束的字段,要先删除约束才能删字段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值