一期SQLServer知识点总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一期SQL Server 知识点总结
一、基本概念
1.数据完整性:数据的完整性是指数据库中数据的准确性。
2.数据冗余:在数据库中,数据重复的现象就是数据冗余。在实际开
发中冗余允许存在,但应尽量减少冗余。
3.实体:实体是所有客观存在的,可以被描述的事物。
4.表: 表是实体的集合,用来存储具体的数据。
5.DBMS:数据库管理系统。
DBS:数据库系统。
DBA:数据库管理员。
6.SQL Server中的数据库按照用途可以分为:
系统数据库:master、Tempdb、Model、Msdb。
用户数据库:用户自定义的数据库。
7.SQLServer两种身份验证:
Windows身份验证,SQLServer身份验证。
8.主数据库文件后缀名:.mdf
次要数据库文件后缀名:.ndf
日志文件后缀名:.ldf
9.实体完整性约束:实体完整性约束要求表中的每一行数据都反映
不同的实体,不能存在相同的数据行。
10.实体完整性包括:索引,唯一约束,主键约束,标识列。
11.域完整性约束:域完整性约束是指给定列的输入有效性。
12.域完整性包括:检查约束,外键约束,默认值,非空约束。
13.引用完整性约束:在输入或删除数据行时,引用完整性约束用来
保持表之间已定义的关系。
引用完整性约束通过主外键之间的引用关系来
实现。
14.自定义完整性约束:用户自定义完整性约束用来定义特定的规则。
15.主键:表中有一列或几列组合的值能用来唯一的标示表中的每一
行,这样的一列或多列的组合叫做表的主键。
主键的作用:用来约束确保了表中的行使唯一的,一个表中只能
有一个主键。
16.外键:外键的值要求与主表的主键相对应,实现完整性规则的过
程。一个表可以有多个外键。
17.主表与子表的关系:
子表中的相关项目的数据,在主表中必须存在。
主表中相关项的数据更改了,则主表对应的数据项也应当随之更改。在删除子表之前,不能删除主表。
18.通配符:
'_':表示一个字符,如:A like 'C_'
%:表示任意长度的字符串,如:B like '%@%'
[]:表示括号中所指定范围内的一个字符,如:C like '9W0[1-2]'
[^]:表示不再括号内中所指定范围内的任意一个字符
如: D like '9w0[^1-2]'
19.T-SQL支持的逻辑运算符:And,Or,Not。
20.关键字:
order by: (ASC或Desc)
<>:不等于符号
As:用来在查询中使用列名字
如:select name as 姓名from Student
Is Null或者Is Not Null:用于判断是否为空行
Top:查询一些需要返回限制的行数
Percent:用来限制百分比记录
如:select top 2 person name from Student
like:模糊查询
如:select Age from Student where name like '张%' between and:某个范围内进行查询
如:select * from Stu where Score between 80 and 90 between and 多用于查询日期之间的范围
如:select * from Stu where BornDate between ‘1991-09-15’ and ‘1992-09-06’
In:在列举值内进行查询
如:select Address from Student where Address in('北京','广州')
Group by:分组查询
Having:分组筛选
Having Group By Where使用顺序:
where---->Group By----->Having
where 用于条件筛选
Group By子句通常会结合聚合函数一起来使用
Having 子句能够在分组的基础上、再次进行筛选
21.聚合函数:(返回单个值)
Sum,Avg,Max,Min,Count
Sum:返回表达式中所有数值的总和,Sum只能用于数字类型的列Avg:返回表达式中所有数值的平均值,Avg只能用于数字类型列Max:返回表达式中最大的值,Max用于数字型,字符型以及日期时间的类型列
Min:返回表达式中最小的值,Min用于数字型,字符型以及日期时间的类型列
Count:返回表达式中非空的值,Count用于数字和字符类型的列
22.常用多表连接查询:
内连接:inner join
左外连接:left join
右外连接:right join
多表连接查询使用on关键字确定主外键关系
内连接与外连接的区别:
内连接:进行连接的两个表对应的相匹配的字段完全相同的连接。左连接:两个表进行左连接时会返回左边表中的所有的行和右边表中与之相匹配的列值没有相匹配的用空值代替。
右连接:两个表进行右连接时会返回右边表中的所有的行和左边表中与之相匹配的列值没有相匹配的用空值代替。
二、数据库增删改查:表名:Student
列名如下:
姓名年龄性别爱好地址
Name Age Sex Hobby Address
1.添加一条语句:
添加所有列insert into <表名> values<值列表>
如:insert into Student values('张三',20,'男','体育','苏州')
insert into<表名>[列名]values<值列表> 此SQL语句用于添加指定的列
如:insert into Student(Name,Age)values('李四',23)
一次插入多行数据:
insert into 表名(3)
select union
select union
select
如:insert into Student
select '王五',21,'男','音乐','江苏南京' union
select '马六',22,'男','打球','江苏无锡' union
select '靓爆',24,'女','游泳','广东广州'
insert select 语句将现有表中的数据添加到新表中: insert into <新表名> select <原表列名> from <原表>
执行此语句新标应事先建好
Select into 语句将现有表的数据添加到新表: