SQL Server 2012数据库技术及应用1.6
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
22
二、使用SSMS创建与管理表
1 使用SSMS创建表 2 使用SSMS修改表 3 使用SSMS删除表
23
(一)使用SSMS创建表
创建外 键约束
创建检 查约束
创建唯 一性约束
创建主 键约束
保存表 的定义
创建表
24
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
在【对象资源管理器】窗 口中:
Unicode (双字节字符)
日期和时间
唯一标识
char[(n)] varchar[(n|max)] nchar[(n)] nvarchar[(n|max)] datetime2 datetimeoffset date time rowversion uniqueidentifier
近似数字 货币
float[(n)] real money smallmoney
的素养,以及培养良好的沟通能力 培养较强的质量意识、经济意识和时间意识,能够按时完成工作
任务
5
单元1.6 表的创建与操作(SSMS)
工作任务
案例1-6-1 教务管理表的创建与管理(SSMS) 案例1-6-2 教务管理表的操作(SSMS)
6
单元1.6 表的创建与操作(SSMS)
一 表概述 二 使用SSMS创建与管理表 三 使用SSMS操作表 四 使用SSMS创建与管理索引 五1 关系图的创建与管理
SQL Server中的文件数据的兼容性。 可以在SQL Server中将文件和文档存储在称为FileTables的特殊
表中。 Windows应用程序访问这些文件和文档如同它们存储在文件系统
中一样,而不必对Windows客户端应用程序进行任何更改。
15
(三)T-SQL的数据类型
: SQL Server 2012中常用的系统(内置)数据类型
数据类型分类
系统数据类型
数据类型分类
系统数据类型
bit
二进制(图像、视频、 音乐等)
binary[(n)]
varbinary[(n|max))]
bigint
精确整数
int smallint
精
tinyint
确
数
decimal[(p[,s])]
字 精确小数
numeric[(p[,s])]
字符 (单字节字符)
表名 列名 数据类型 约束 …
数据行1 … 数据行n
创建、修改、删除数据库关系图
N O T N U LL非空值约束 D E FA U LT 默认值约束 PR IM A R Y K EY 主键约束 U N IQ U E 唯一键约束 FO R E IG N K EY 外键约束 CH E CK 检查约束
创建索引:CR EA TE IN D EX O N 修改索引:A LTER IN D EX O N 删除索引:D R O P IN D E X
宽表
宽表是定义了列集的表。宽表使用稀疏列,从而将表可以包含的总 列数增大为30 000列。索引数和统计信息数也分别增大为1 000和 30 000。宽表行的最大大小为 8 019字节。
14
(二)表的类型
文件表(FileTables)
SQL Server 2012新增功能之一。 支持Windows文件命名空间以及 Windows应用程序对存储在
7
一、表概述
表是数据库对象,用于存储逻辑设计得到的关系模型 关系模型中的每一个关系(二维表)对应数据库中的一个
基本表(简称表) 表是关系模型的实现(数据结构、数据操作、完整性) 表的定义(定义列名和数据类型等) 表的操作(插入行、更新数据、删除行) 表的完整性约束(主键、外键、默认值、CHECK等)
30
(二)使用SSMS修改表
使用【表设计器】修改表
案例: 对于以上所创建的表“Student”“Course”和 “SC”,定义标识列和完整性约束。
打开【表设计器 】 在【对象资源管理器】窗口中,展开“数据 库”→“EDUC”→“表”节点,右键单击要创建主键 的表“Student”、“Course”和“SC”节点,从弹出 的快捷菜单中选择“设计”命令。这时在【文档】窗口 中打开【表设计器】,可对表进行进一步定义。
树形结构 用户自定义
空间数据
hierarchyid 用户自行命名 geometry geography
程序中的数据类型
cursor,table,
扩展标记语言
xml
sql_variant
16
(四)SQL Server表的完整性约束
回顾:关系的完整性约束
规则:PK
规则:类型、
检查: DBMS 默认值、是否允
许空等
检查:DBMS
规则:FK 检查:DBMS
规则:自定义约束、 存储过程、函数等
检查: DBMS
17
(四)SQL Server表的完整性约束
SQL Server的DDL支持表的完整性约束
主键: PRIMARY KEY 标识列:IDENTITY 唯一键:UNIQUE 非空值:NOT NULL
……
数据类型: Data Type 非空值: NOT NULL 默认值: DEFAULT 检查: CHECK
20
二、使用SSMS创建与管理表
工作任务
根据案例1-3教务管理数据库逻辑设计得到的关系模型,在 所创建的数据库“EDUC”中创建相应的表。为便于学习, 仅在其中选择具有代表性的关系“Student”“Course”和 “SC”创建相应的表,并对其属性进行适当简化。为关系 “Student”增加一个入学录取分数属性“AScores”,为关 系“Course”增加一个序号属性“No”
4
单元1.6 表的创建与操作(SSMS)
SQL Server 2012表的基本知识 使用SSMS创建、修改和删除表的操作方法 使用SSMS插入、删除数据行以及更新数据的操作方法 索引的基本知识 使用SSMS创建和删除索引的操作方法 使用SSMS创建关系图 表有关的英文词汇
能够规范地操作数据,培养严谨的科学态度 通过以组为单位组织数据,培养良好的工作任务达成、团队合作
属性(Attribute) 主键(Primary Key)
外键(Foreign Key)
被参照关系与参照关系
父实体与子实体
父关系与子关系 主关系与从关系
SQL Server
表(Table)
行(Row) 列(Column) 主键 (Primary Key) 外键 (Foreign Key)
主键表与外键表
1数为1 024列)。
已分区表
当表很大时,可以水平地把数据分割成一些单元,放在同一个数据 库的多个文件组中。用户可以通过分区快速地访问和管理数据的某 部分子集而不是整个数据表,从而便于管理大表和索引。
临时表
局部临时表 :仅对连接SQL Server实例的当前用户是可见的,当 用户从 SQL Server实例断开连接时局部临时表被删除。
展开“数据库”下的 EDUC节点,右键“表” 节点,选择“新建表” 命令,进入【表设计器】
25
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
在【表设计器】中: 第一列:输入列名 第二列:选择数据类型 第三列:选择是否为空
26
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
保存表定义: 右键单击【文档】窗 口中的【表设计器】 标签,在弹出的快捷 菜单中选择“保存” 命令
32
(二)使用SSMS修改表
1.定义标识列(IDENTITY)
案例:对课程表“Course”, 将其序号列“No”定义为标识 列,使其按照自然数从1开始逐 步增加1的规律自动编号。
关系 模型
概 念 模 型转 为 关 系 模型
关 系 规 范化
SQ L Server 资源管理器 查询编辑器
创 建 数 据库 创 建 基 本表 操 作 基 本表
数据查询 数据库安全 创建视图 数据库恢复 程序设计 数据库传输
2
表的创建与操作 知识框架
客观世界 事物及联系
外模式—V IEW
需求分析 概念设计 逻辑设计
↓
↓
↓
模式—TA BLE
使用SSMS交互方式 分析报告 概念模型 关系模型 内模式—D A TA B A SE
创建表:CR EA TE TA B LE
修改表:A LTER TA B LE 表 删除表:D R O P TA BLE 的
创
建 插入数据行:IN SER T...V A LU E S 与 更新数据:U PD A TE...SE T 操 删除数据行:D E LE TE 作
21
二、使用SSMS创建与管理表
教务管理表3个关系模式
Student(SID,Sname,Sex,Birthdate,Specialty, AScores) PK:SID Course(No,CID,Cname,Credit) PK:CID SC(SID,CID,Scores) PK:SID+CID FK:SID,CID
外键: FOREIGN KEY
18
(四)SQL Server表的完整性约束
三个方面+用户自定义
自定义检查(CHECK) 存储过程(STORED PROCEDURE) 触发器(TRIGGER) 自定义函数(FUNCTION) ……
19
单元1.6 表的创建与操作(SSMS)
一 表概述 二 使用SSMS创建与管理表 三 使用SSMS操作表 四 使用SSMS创建与管理索引 五1 关系图的创建与管理
31
(二)使用SSMS修改表
1.定义标识列(IDENTITY)
特点
列的数据类型为不带小数的数值类型。 在插入数据行操作时,该列的值由系统按标识增量的设置自动生成, 不允许空值。 列值不重复,具有唯一标识表中一行的作用,从而可以实现表的实 体完整性。
定义
指定数据类型为整数类型并且不允许为空。 设置(是标识)为“是”。 设置标识种子,指表中第一行的值,默认值为1。 设置标识增量,表示相邻两个标识值之间的增量,默认值为1。
全局临时表 :对所有的用户和连接都是可见的,当所有引用该表的 用户从SQL Server实例断开连接时才会被删除。
13
(二)表的类型
系统表
用来保存一些服务器配置信息数据,用户不能直接查看和修改系统 表,只有通过专门的管理员连接才能查看和修改。
不同版本的数据库管理系统的系统表一般不同,在升级数据库管理 系统时,一些应用系统表的应用可能需要重新改写。
某些DBMS
表(Table)
记录(Record) 字段(Field) 主键 (Primary Key) 外键 (Foreign Key)
父表与子表 主表与从表
9
一、表概述
1 表的构成 2 表的类型 3 T-SQL的数据类型 4 SQL Server表的完整性约束
10
(一)表的构成
表主要由列和行构成
27
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
保存表定义: 在弹出的【选择名称】 对话框中输入表名 “Student”
28
(一)使用SSMS创建表
创建课程表Course
创建选课表SC
29
二、使用SSMS创建与管理表
1 使用SSMS创建表 2 使用SSMS修改表 3 使用SSMS删除表
SQL Server 2012数据库技术及应用
教学单元1.6
第6章 表的创建与操作( SSMS )
案例1-6-1 教务管理表的创建与管理 案例1-6-2 教务管理表的操作
表的创建与操作 学习导航
需求分析
概念设计
数据库开 发与维护
逻辑设计
物理设计
应用开发
系统 维护
数据库系统 分析报告 数 据 模 型 概念模型 数据库设计 建模方法
列:每一列用来保存关系的属性,也称为字段 行:每一行用来保存关系的元组,也称为数据行或记录 例如:教务管理数据库EDUC中的学生Student表。
11
(一)表的构成
表的数据库对象
列(Column) 主键(PK) 外键(FK) 约束(Check) 触发器(Trigger) 索引(Index) …
3
单元1.6 表的创建与操作(SSMS)
能够根据数据库逻辑设计使用SSMS创建表 能够根据数据库应用系统的功能需求使用SSMS对
表进行插入、删除数据行以及更新数据的操作 能够根据数据库应用系统的功能需求使用SSMS创
建合适的索引 能够根据数据库逻辑设计使用SSMS创建并管理关
系图 能够阅读并理解表有关的英文词汇
8
一、表概述
概念模型、关系模型和表之间的术语对照表
概念模型
关系模型
实体集/联系集 (Entity set/ Relationship set)
关系(Relation)
实体实例/联系实例 Entity/Relationship
)元组(Tuple)
属性(Attribute) 主键/码 (Primary Key) 外键/外码 (Foreign Key)
二、使用SSMS创建与管理表
1 使用SSMS创建表 2 使用SSMS修改表 3 使用SSMS删除表
23
(一)使用SSMS创建表
创建外 键约束
创建检 查约束
创建唯 一性约束
创建主 键约束
保存表 的定义
创建表
24
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
在【对象资源管理器】窗 口中:
Unicode (双字节字符)
日期和时间
唯一标识
char[(n)] varchar[(n|max)] nchar[(n)] nvarchar[(n|max)] datetime2 datetimeoffset date time rowversion uniqueidentifier
近似数字 货币
float[(n)] real money smallmoney
的素养,以及培养良好的沟通能力 培养较强的质量意识、经济意识和时间意识,能够按时完成工作
任务
5
单元1.6 表的创建与操作(SSMS)
工作任务
案例1-6-1 教务管理表的创建与管理(SSMS) 案例1-6-2 教务管理表的操作(SSMS)
6
单元1.6 表的创建与操作(SSMS)
一 表概述 二 使用SSMS创建与管理表 三 使用SSMS操作表 四 使用SSMS创建与管理索引 五1 关系图的创建与管理
SQL Server中的文件数据的兼容性。 可以在SQL Server中将文件和文档存储在称为FileTables的特殊
表中。 Windows应用程序访问这些文件和文档如同它们存储在文件系统
中一样,而不必对Windows客户端应用程序进行任何更改。
15
(三)T-SQL的数据类型
: SQL Server 2012中常用的系统(内置)数据类型
数据类型分类
系统数据类型
数据类型分类
系统数据类型
bit
二进制(图像、视频、 音乐等)
binary[(n)]
varbinary[(n|max))]
bigint
精确整数
int smallint
精
tinyint
确
数
decimal[(p[,s])]
字 精确小数
numeric[(p[,s])]
字符 (单字节字符)
表名 列名 数据类型 约束 …
数据行1 … 数据行n
创建、修改、删除数据库关系图
N O T N U LL非空值约束 D E FA U LT 默认值约束 PR IM A R Y K EY 主键约束 U N IQ U E 唯一键约束 FO R E IG N K EY 外键约束 CH E CK 检查约束
创建索引:CR EA TE IN D EX O N 修改索引:A LTER IN D EX O N 删除索引:D R O P IN D E X
宽表
宽表是定义了列集的表。宽表使用稀疏列,从而将表可以包含的总 列数增大为30 000列。索引数和统计信息数也分别增大为1 000和 30 000。宽表行的最大大小为 8 019字节。
14
(二)表的类型
文件表(FileTables)
SQL Server 2012新增功能之一。 支持Windows文件命名空间以及 Windows应用程序对存储在
7
一、表概述
表是数据库对象,用于存储逻辑设计得到的关系模型 关系模型中的每一个关系(二维表)对应数据库中的一个
基本表(简称表) 表是关系模型的实现(数据结构、数据操作、完整性) 表的定义(定义列名和数据类型等) 表的操作(插入行、更新数据、删除行) 表的完整性约束(主键、外键、默认值、CHECK等)
30
(二)使用SSMS修改表
使用【表设计器】修改表
案例: 对于以上所创建的表“Student”“Course”和 “SC”,定义标识列和完整性约束。
打开【表设计器 】 在【对象资源管理器】窗口中,展开“数据 库”→“EDUC”→“表”节点,右键单击要创建主键 的表“Student”、“Course”和“SC”节点,从弹出 的快捷菜单中选择“设计”命令。这时在【文档】窗口 中打开【表设计器】,可对表进行进一步定义。
树形结构 用户自定义
空间数据
hierarchyid 用户自行命名 geometry geography
程序中的数据类型
cursor,table,
扩展标记语言
xml
sql_variant
16
(四)SQL Server表的完整性约束
回顾:关系的完整性约束
规则:PK
规则:类型、
检查: DBMS 默认值、是否允
许空等
检查:DBMS
规则:FK 检查:DBMS
规则:自定义约束、 存储过程、函数等
检查: DBMS
17
(四)SQL Server表的完整性约束
SQL Server的DDL支持表的完整性约束
主键: PRIMARY KEY 标识列:IDENTITY 唯一键:UNIQUE 非空值:NOT NULL
……
数据类型: Data Type 非空值: NOT NULL 默认值: DEFAULT 检查: CHECK
20
二、使用SSMS创建与管理表
工作任务
根据案例1-3教务管理数据库逻辑设计得到的关系模型,在 所创建的数据库“EDUC”中创建相应的表。为便于学习, 仅在其中选择具有代表性的关系“Student”“Course”和 “SC”创建相应的表,并对其属性进行适当简化。为关系 “Student”增加一个入学录取分数属性“AScores”,为关 系“Course”增加一个序号属性“No”
4
单元1.6 表的创建与操作(SSMS)
SQL Server 2012表的基本知识 使用SSMS创建、修改和删除表的操作方法 使用SSMS插入、删除数据行以及更新数据的操作方法 索引的基本知识 使用SSMS创建和删除索引的操作方法 使用SSMS创建关系图 表有关的英文词汇
能够规范地操作数据,培养严谨的科学态度 通过以组为单位组织数据,培养良好的工作任务达成、团队合作
属性(Attribute) 主键(Primary Key)
外键(Foreign Key)
被参照关系与参照关系
父实体与子实体
父关系与子关系 主关系与从关系
SQL Server
表(Table)
行(Row) 列(Column) 主键 (Primary Key) 外键 (Foreign Key)
主键表与外键表
1数为1 024列)。
已分区表
当表很大时,可以水平地把数据分割成一些单元,放在同一个数据 库的多个文件组中。用户可以通过分区快速地访问和管理数据的某 部分子集而不是整个数据表,从而便于管理大表和索引。
临时表
局部临时表 :仅对连接SQL Server实例的当前用户是可见的,当 用户从 SQL Server实例断开连接时局部临时表被删除。
展开“数据库”下的 EDUC节点,右键“表” 节点,选择“新建表” 命令,进入【表设计器】
25
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
在【表设计器】中: 第一列:输入列名 第二列:选择数据类型 第三列:选择是否为空
26
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
保存表定义: 右键单击【文档】窗 口中的【表设计器】 标签,在弹出的快捷 菜单中选择“保存” 命令
32
(二)使用SSMS修改表
1.定义标识列(IDENTITY)
案例:对课程表“Course”, 将其序号列“No”定义为标识 列,使其按照自然数从1开始逐 步增加1的规律自动编号。
关系 模型
概 念 模 型转 为 关 系 模型
关 系 规 范化
SQ L Server 资源管理器 查询编辑器
创 建 数 据库 创 建 基 本表 操 作 基 本表
数据查询 数据库安全 创建视图 数据库恢复 程序设计 数据库传输
2
表的创建与操作 知识框架
客观世界 事物及联系
外模式—V IEW
需求分析 概念设计 逻辑设计
↓
↓
↓
模式—TA BLE
使用SSMS交互方式 分析报告 概念模型 关系模型 内模式—D A TA B A SE
创建表:CR EA TE TA B LE
修改表:A LTER TA B LE 表 删除表:D R O P TA BLE 的
创
建 插入数据行:IN SER T...V A LU E S 与 更新数据:U PD A TE...SE T 操 删除数据行:D E LE TE 作
21
二、使用SSMS创建与管理表
教务管理表3个关系模式
Student(SID,Sname,Sex,Birthdate,Specialty, AScores) PK:SID Course(No,CID,Cname,Credit) PK:CID SC(SID,CID,Scores) PK:SID+CID FK:SID,CID
外键: FOREIGN KEY
18
(四)SQL Server表的完整性约束
三个方面+用户自定义
自定义检查(CHECK) 存储过程(STORED PROCEDURE) 触发器(TRIGGER) 自定义函数(FUNCTION) ……
19
单元1.6 表的创建与操作(SSMS)
一 表概述 二 使用SSMS创建与管理表 三 使用SSMS操作表 四 使用SSMS创建与管理索引 五1 关系图的创建与管理
31
(二)使用SSMS修改表
1.定义标识列(IDENTITY)
特点
列的数据类型为不带小数的数值类型。 在插入数据行操作时,该列的值由系统按标识增量的设置自动生成, 不允许空值。 列值不重复,具有唯一标识表中一行的作用,从而可以实现表的实 体完整性。
定义
指定数据类型为整数类型并且不允许为空。 设置(是标识)为“是”。 设置标识种子,指表中第一行的值,默认值为1。 设置标识增量,表示相邻两个标识值之间的增量,默认值为1。
全局临时表 :对所有的用户和连接都是可见的,当所有引用该表的 用户从SQL Server实例断开连接时才会被删除。
13
(二)表的类型
系统表
用来保存一些服务器配置信息数据,用户不能直接查看和修改系统 表,只有通过专门的管理员连接才能查看和修改。
不同版本的数据库管理系统的系统表一般不同,在升级数据库管理 系统时,一些应用系统表的应用可能需要重新改写。
某些DBMS
表(Table)
记录(Record) 字段(Field) 主键 (Primary Key) 外键 (Foreign Key)
父表与子表 主表与从表
9
一、表概述
1 表的构成 2 表的类型 3 T-SQL的数据类型 4 SQL Server表的完整性约束
10
(一)表的构成
表主要由列和行构成
27
(一)使用SSMS创建表
1. 定义列名、数据类型和空值约束
保存表定义: 在弹出的【选择名称】 对话框中输入表名 “Student”
28
(一)使用SSMS创建表
创建课程表Course
创建选课表SC
29
二、使用SSMS创建与管理表
1 使用SSMS创建表 2 使用SSMS修改表 3 使用SSMS删除表
SQL Server 2012数据库技术及应用
教学单元1.6
第6章 表的创建与操作( SSMS )
案例1-6-1 教务管理表的创建与管理 案例1-6-2 教务管理表的操作
表的创建与操作 学习导航
需求分析
概念设计
数据库开 发与维护
逻辑设计
物理设计
应用开发
系统 维护
数据库系统 分析报告 数 据 模 型 概念模型 数据库设计 建模方法
列:每一列用来保存关系的属性,也称为字段 行:每一行用来保存关系的元组,也称为数据行或记录 例如:教务管理数据库EDUC中的学生Student表。
11
(一)表的构成
表的数据库对象
列(Column) 主键(PK) 外键(FK) 约束(Check) 触发器(Trigger) 索引(Index) …
3
单元1.6 表的创建与操作(SSMS)
能够根据数据库逻辑设计使用SSMS创建表 能够根据数据库应用系统的功能需求使用SSMS对
表进行插入、删除数据行以及更新数据的操作 能够根据数据库应用系统的功能需求使用SSMS创
建合适的索引 能够根据数据库逻辑设计使用SSMS创建并管理关
系图 能够阅读并理解表有关的英文词汇
8
一、表概述
概念模型、关系模型和表之间的术语对照表
概念模型
关系模型
实体集/联系集 (Entity set/ Relationship set)
关系(Relation)
实体实例/联系实例 Entity/Relationship
)元组(Tuple)
属性(Attribute) 主键/码 (Primary Key) 外键/外码 (Foreign Key)