视频地址:
https://www.bilibili.com/video/BV1qW411y7Bq
一、什么是数据库?
狭义定义:
数据仓库
广义定义:
对数据进行存储和操作的软件,和数据本身合并称为数据库
另一种说法:
表 + 关系 + 操作 组成
二、为什么需要数据库?
1、所有的应用软件的后台都需要数据库存储数据
2、数据存储容量小,可持久化保存
3、存储安全
4、容易维护和升级
5、可移植
6、简化对数据的操作
7、为学习其他厂商的数据库降低学习成本
8、属于BS架构的范畴
三、需要的预备知识?
1、数据库原理
TL_SQL
2、数据结构和数据库的区别
是研究数据在应用层次的不同
数据结构是对系统软件级别研究数据的存储和操作
数据库是对应用软件级别研究数据的存储和操作
3、有编程语言为什么还需要SQL?
程序语言处理的核心问题是对内存的操作
数据库处理的核心问题是对硬盘的操作
4、从三个方面理解数据库
如何实现存储
字段、记录、表、约束【主键、外键、唯一键、非空、check、default、触发器】
如何操作数据
1、insert 插入,增加
2、update 更新,修改
3、delete 删除,移除
4、T-SQL
5、存储过程
6、函数
7、触发器
如何显示数据
select 查询
四、必须的操作
连接 - CS概念
附加 和 分离 数据库
什么是约束?
是对数据表中的属性操作的限制
1、主键 PrimaryKey:保证记录的唯一,防止记录冗余
2、外键 ForeignKey:强制保证关系的存在和正确
3、检查 Check:对输入的值进行检查控制
4、默认 Default:对输入项设置默认值,保证记录一定存在一个值【NULL也可以是一个值】
5、唯一 Unique:保证字段的取值不可重复,但是允许为空【多个设置Unique的字段也可以设置NULL,这取决于数据库厂商】
6、是否空 Null & Not Null:可要求该字段必须有具体的值存在
约束和表的区别?
约束是解决记录的值存储是否符合规则和有效的问题
表是解决记录如何存储的问题
建表的过程包含了如何定义记录的存储和字段的约束
关系?
多个数据表之前构建的联系
关系类型:
1、一对一
2、一对多
3、多对多
Top查询
https://www.bilibili.com/video/BV1qW411y7Bq?p=52
不同于MySQL,SqlServer提供了一个Top关键字
可用于查询数据表位于最前面的记录
但是问题是以什么规则来制定最前面的记录呢?
视频中查询的结果是按照主键进行升序排序的TOP查询的也就是ID值为最小的那一个开始算起
SELECT TOP 记录数量 / 百分比 字段 ... FROM 表 [WHERE 筛选条件]
按具体记录数量查询
SELECT TOP 10 * FROM Table
按表的总记录百分比查询
SELECT TOP 10 PERCENT * FROM Table