1、 简单复习
-> 关系型数据库基础
-> 简单介绍了SQL Server的历史
-> 关系的概念:表
-> 表的结构与数据类型
-> SQL Server的简单体系架构
-> 连接管理
-> 关系引擎
-> 存储引擎
-> 内存池
-> 数据库的简单结构(逻辑结构)
-> 数据库
-> 架构
-> 表
-> 表
-> 表
-> 架构
-> 表
-> 架构
-> 表
-> 数据据文件
-> 文件
-> 文件
-> 文件
-> 文件
-> SQL语句
-> 数据定义语言(DDL)
-> 数据操作语言(DML)
-> 数据控制语言(DCL)
--简单的增删改查(CRUD:Create,Retrieve,Update,Delete)
2、 主键字段
int和bigint
uniqueidentifer
3、 约束
-> 限制字段可以取什么值
-> 官方:约束是保证数据完整性的机制
-> 常见的约束
-> 主键约束(PK) 默认创建聚集索引 (聚簇索引) 拼音检索
-> 唯一约束(UQ) 默认创建非聚集索引 部首检索
-> 非空约束 设计表,字段后写的null与not null
-> 检查约束(CK) 限定某个字段的表达式
-> 默认约束(DF) 如果不给取值就使用默认值,否则使用提供的值
-> 外键约束(FK) 添加商品数据的时候,必须要有厂家数据. 除非外键数据为NULL
如果还有商品数据,不允许删除厂家数据
-> 实现约束(约束与表是统一级别)
alter table ConstraintExercise.StuInfo2
add constraint UQ_StuInfo2_stuName unique(stuName),--唯一约束(创建非聚集所以)
constraint CK_StuInfo2_stuAge check(stuAge>=0 and stuAge<=100),--检查约束
constraint DF_stuInfo2_stuSex default('M') for stuSex,--默认约束
constraint CK_stuInfo2_stuSex check(stuSex='F' or stuSex='M'),
constraint FK_Course2_StuInfo2_couserId foreign Key(courseid) --外键约束
references ConstraintExercise.course2(couserid);
-->如何查看已有约束
select * from sys.objects
type不同表示的类型不一样
-> S 系统表
-> U 用户表
-> PK 主键
-> UQ 唯一约束
-> C 检查约束
-> D 默认约束
-->修改表
-> 删除一列
alter table 表名 drop column 列名
-> 增加一列
alter table 表名 add 列名 类型
-> 修改数据类型
alter table 表名 alter column 列名 类型
-->修改主外键
alter table 外键表 add constraint 外键名 foreign key(外键) references 主键表(主键)
4、 查询
-->判断
优先级:
not > and >or
-->匹配
使用”_”表示一个任意字符
使用”%”表示任意个任意字符
-- [] [a-z] [^a-z]
-- stuName like '杨[中重]科'
-- 如果要匹配 asp_net
-- bookName like 'asp[_]net'
-->范围
between..and..
in(散列可选值)
-->空值处理(SQL Server 采用三值逻辑 真 假 不知道)
isnull,('null' 和 null 不同)
5. 标准的SQL语句
select top | distinct
字段
, 表达式
, 函数
, 标量子查询
, 常量
from
数据源
where
基本筛选
group by
分组字段
having
二次筛选
order by
排序字段依据;
-- SQL语句的执行顺序
--
-- 获得数据源(from)
-- 进行第一次筛选(where)
-- 对筛选得到的结果进行分组(group by)
-- 可以对分组后的结果进行再删选一次(having)
-- 对所有数据进行整理(select)
-- 对结果进行排序(order by)
数据库约束和CRUD操作
最新推荐文章于 2024-05-24 00:18:13 发布