数据:data计算机科学中数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称。数据是数据库中存储与管理的基本对象
数据库:database DB 指的是以一定方式存储在一起,能为多个用户共享,具有尽可能小的冗余度,与应用程序彼此独立的数据集合(层次数据库,网状数据库,关系型数据库)
数据库管理系统:database management system DBMS 它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性,它可以使多个应用程序和用户用不同的方法在同时或不同时刻建立,修改和查询数据库
数据库系统:database system DBS 由数据库及其管理软件组成的系统。(数据库,数据库管理系统,应用程序,管理员,用户)
数据模型:层次模型 网状模型 关系模型
关系:一个关系对应一个二维表,表名就是关系名
记录(元组):二维表中一行就是一个记录
属性(字段):二维表中的列
值域:列的值成为属性值,属性值的取值范围成为值域
数据库设计步骤:
需求分析,了解用户的数据需求,处理需求,安全性及完整性要求
概念设计,通过数据抽象,设计系统概念模型,一般为E-R型
逻辑分析,设计系统的模式和外模式,对于关系模型主要的基本表和视图
物理设计,设计数据的存储结构和存取方式,如索引的设计
验证设计(系统设施),组织数据入库,编制应用程序,试运行
运行与维护,系统犹如运行,长期的维护工作
数据库完整性:实体完整性,域完整性,参照完整性,用户自定义完整性
系统数据库:
master:最重要的数据库,是整个数据库服务器的核心
model:创建数据库的模板,可以再model数据库中设置初始化文件大小
msdb:代理服务数据库,供其代理程序调度警报,作业以及记录操作时使用
tempdb:临时数据库,存储所有的临时表,临时存储过程及其他临时操作。数据库关闭后其内容被清空
主数据文件:有且只能有一个,(.mdf)
次要数据文件:可以有任意多个(.ndf)
日志文件:至少有一个(.ldf)
删除数据库:DROP DATABASE 数据库名称
主键:用于唯一地标识表中的某一条数据,确保数据完整性
外键:用于与另一张表的关联,确保数据的一致性
常见约束:主键约束PRIMARY KEY,默认约束DEFAULT,唯一约束UNIQUE,检查约束CHECK,外键约束FOREIGN KEY
创建数据表:
CREATE TABLE 表名
(字段1 数据类型 列的特征,)
添加表中字段:
ALTER TABLE 表名
ADD 字段名 数据类型 数据特征
修改表中字段:
ALTER TABLE 表名
ALTER COLUMN 字段名 字段类型 列的特征
删除表中字段:
ALTER TABLE 表名
DROP COLUMN 字段名
添加约束:
ALTER TABLE 表名
ADD CONSTRATNT 约束名 约束类型(具体的约束说明)
删除数据表:DROP TABLE 表名
插入单行数据:INSERT INTO 表名 列名列表 VALUES 值列表
插入多行数据:INSERT INTO 表名 列名列表 子查询
更新语句:UPDATE 表名 SET 列名=更新值 where(条件)
删除数据:DELETE FROM 表名 where(条件)
SELECT * FROM 表名
All 查询所有列
AS 改变查询结果中的列名
TOP限制返回行数
DISTINCT 消除重复行
IS NULL空值判断
IS NOT NULL 非空值判断
BETWEEN…AND / NOT BETWEEN…AND范围运算符
IN/NOT IN 是否为列表中的值
EXIST/NOT EXIST
AND OR NOT逻辑运算符
ASC升序 DESC 降序(配合ORDER BY使用)
SUM列值总和
AVG 列值平均值
MAX 列值最大值
MIN 列值最小值
COUNT 统计记录个数
GROUP BY分组
HAVING 分组筛选
LIKE/NOT LIKE关键字中的通配符:
%:任意多个字符 %ab 以ab结束的任意字符串
_:任何单个字符 _ab 以ab结束的包含三个字符的字符串
[ ]:指定范围内的单个字符 [a b c]% 首字符是a,b,c的任意字符串
[^]:不在指定范围内的单个字符 [^a b c]匹配a,b,c,d之外的任意字符
T-SQL语句分类:数据定义语句,数据操作语句,数据控制语句,附加的语言元素
索引的分类:存储结构分为聚合索引,非聚合索引,
其他索引(唯一索引,包含列索引,索引视图,全文索引,XML索引)
视图:是一个虚拟表,从一个或者多个表中导出的,其内容由查询定义
给最终用户带来的好处(结果更容易理解,获得数据更容易)
给开发人员带来好处(限制数据检索更加容易,维护应用程序更方便)
创建视图:
CREATE VIEW 视图名
AS SELECT语句
事务:作为单个逻辑工作单元执行的一系列操作,要么完全执行,要么完全不执行
事务属性:ACID
原子性Atomicity
一致性Consistency
隔离性Isolation
持久性Durability
创建不带参存储过程:
CREATE PROCEDURE 存储过程名
AS
Select * FROM 表名
创建带输入参存储过程:
CREATE PROCEDURE 存储过程名
@参数1 数据类型
AS
Select * FROM 表名
Where 条件
创建带输出参存储过程:
CREATE PROCEDURE 存储过程名
@参数1 数据类型
@参数2 INT OUTPUT
AS
Select * FROM 表名
Where 条件
数据操作语言触发器DML,数据定义语言触发器DDL
DML:AFTER触发器(INSERT,UPDATE,DELETE), INSTEAD OF触发器(事件发生前就会触发)
DDL:(CREATE,ALTER,DROP)
创建触发器:
CREATE TRIGGER 触发器名称
ON 表名/视图名
FOR 触发器种类
AS SQL语句