内容正文:
2.2 创建数据库表
网站数据库应用基础
——SQL Server 2017
同步精品课堂
高等教育出版社第2版
掌握国家标准《机械制图》中有关图幅、比例、字体图线等基本规定。
教学目标
一
01
(1)学会使用对象资源管理器创建表。
(2)学会使用CREATE TABLE 语句创建表。
技能目标
02
(1)掌握对象资源管理器修改表结构。
(2)了解ALTER TABLE 语句修改表结构。
(3)掌握对象资源管理器和 DROP TABLE 语句删除表。
知识目标
教学重难点
二
学会使用CREATE TABLE 语句创建表
掌握对象资源管理器和 DROP TABLE 语句删除表
教学重点
教学难点
导入新课
三
SQL Server 2017
表是 SQL Server数据库中最重要、最基本的对象,数据库中的所有数据都存储在表中。在 SQL Server 2017中创建表的方法主要有两种:
一是在对象资源管理器中通过方便的图形化向导创建;
二是通过编写CREATE TABLE 语句创建。
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
第1步:在对象资源管理器中依次展开“数据库” → “图书信息管理”节点,右击
“表”,选择“新建”子菜单下的“表”命令
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
第2步:在表设计器窗口中,设置列名、数据类型和长度、是否为空值等表的基本信息
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
第3步:各列的设置都完成后,单击工具栏上的“保存”按钮 H, 弹出“选择名称” 对话框,如图所示,确认是否保存所创建的表。输入表的名称“图书信息”,然后单
击“确定”按钮。这样,“图书信息”表的结构就创建好了。
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
① 在第3步时,如果没有单击“保存”按钮进行保存,而是单击表设计器标题栏右
边的“关闭”按钮×,则系统会弹出图2.2.4所示的提示保存表对话框,提示是否进行保
存,单击“是”按钮后,同样会弹出图2.2.3所示的“选择名称”对话框。
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
② 如果在图所示的“选择名称”对话框中输入的表名在该数据库中已经有同名的 表存在,系统会弹出图2.2.5所示的警告对话框,单击“确定”按钮后可以返回“选择名
称”对话框对表进行重新命名后再保存。
1、创建“图书信息”和“出版社”表
新知讲授
四
案例1 使用对象资源管理器在“图书信息管理”数据库中创建“图书信息”表,并输入数据。
第4步:当新表创建并保存后,在对象资源管理器中依次展开“数据库”→ “图书信息
管理”→ “表”节点,就可以看到刚刚创建的 “dbo. 图书信息”表,如图所示。
1、创建“图书信息”和“出版社”表
新知讲授
四
在输入数据的过程中,如果要取消正在输入的数据,可以直接按Esc 键;在更改某个数
据的过程中要取消更改,也可以直接按 Esc 键。
提示
1.创建“图书信息管理”数据库
新知讲授
四
案例2 使用CREATE TABLE 语句在“图书信息管理”数据库中创建“出版社”表,结 构如图所示,并输入如图所示的数据。
1.创建“图书信息管理”数据库
新知讲授
四
选择第1步:在对象资源管理器中,单击工具栏上的新查询N 按钮,打开查询编辑器窗口,
输入如下代码:“开始” → “Microsoft SQL Server Tools 17”→“Microsoft SQL Server Man- agement Studio 17” 命令,打开“连接到服务器”对话框
案例2 使用CREATE TABLE 语句在“图书信息管理”数据库中创建“出版社”表,结 构如图所示,并输入如图所示的数据。
1、创建“图书信息”和“出版社”表
新知讲授
四
① USE 语句表示打开数据库,本案例是打开“图书信息管理”数据库,即把创建的表
保存到“图书信息管理”数据库中。
② GO 表示一批 T-SQL 语句的结束。
提示
1、创建“图书信息”和“出版社”表
新知讲授
四
③ CREATE TABLE 语句里的 NULL或者 NOT NULL 表示该列内容是否允许为空。
④“出版社号”列的数据设置了标识列, “IDENTITY(101,1)”表示标识种子为101, 标识增量为1。在后面输入记录时该列的数据会由系统自动生成,不允许用户进行输入及
更改。
提示
1.创建“图书信息管理”数据库
新知讲授
四
第2步:单击 P 执 按钮,执行代码。如果在“消息”窗口中显示“命令已成功完 成”,说明已经成功创建“出版社”表。此时,可以把创建表的代码保存成 SQL 文件,以备后用。
案例2 使用CREATE TABLE 语句在“图书信息管理”数据库中创建“出版社”表,结 构如图所示,并输入如图所示的数据。
1.创建“图书信息管理”数据库
新知讲授
四
第3步:在对象资源管理器中依次展开“数据库” → “图书信息管理” → “表”节点,就可以看到刚刚创建的“出版社”表。
案例2 使用CREATE TABLE 语句在“图书信息管理”数据库中创建“出版社”表,结 构如图所示,并输入如图所示的数据。
1.创建“图书信息管理”数据库
新知讲授
四
第4步:右击“出版社”表,选择“编辑前200行”命令,打开“出版社”表的数据窗
口,输入如图所示的数据。
案例2 使用CREATE TABLE 语句在“图书信息管理”数据库中创建“出版社”表,结 构如图所示,并输入如图所示的数据。
2、数据库中的表
新知讲授
四
表是存放数据库中所有数据的数据库对象。
用处
如同 Excel 电子表格,数据在表中是按 行和列的格式进行组织的,其中每行代表 一条记录,每列代表记录中的属性(也称字
段)。
例如
表
2、数据库中的表
新知讲授
四
一个数据 库中通常包含各个方面的数据,如在“图书信息管理”数据库中,包含“图书信息” “出版社信息”和“图书库存信息”等。
数据库
例如,在包含图书信息的“图书信息”表中每一行代表一本书,每一列分别表示
例如
表
2、数据库中的表
新知讲授
四
(2)表中每一列的名称。
02
(3)表中每一列的数据类型和长度
03
(4)表中的列是否允许空值、是否唯一、是否要进行默认设置或添加约束。
04
(5)表中需要的索引的类型和需要建立索引的列。
05
(1)表的名称。
01
(6)表间的关系,即确定哪些列是主键,哪些列是外键。
06
在设计表时需
要确定如下事项:
2、数据库中的表
新知讲授
四
在 SQL Server 2017 中,每个列、局部变量、表达式和参数都有其各自的数据类型。指定对象的数据类型相当于定义了该对象的以下4种属性:
① 对象所含的数据类型,如字符、整数或二进制数。
② 存储值的长度或它的大小。
01
02
2、数据库中的表
新知讲授
四
在 SQL Server 2017 中,每个列、局部变量、表达式和参数都有其各自的数据类型。指定对象的数据类型相当于定义了该对象的以下4种属性:
③ 数值精度(仅用于数值数据类型)。
④ 小数位数(仅用于数值数据类型)。
03
04
2、数据库中的表
新知讲授
四
(1)精确数值类型
使用数值数据的数据类型称为数值数据类型,根据精度可以将数值数据类型分为精确数
值类型和近似数值类型。精确数值类型如表 所示。
数据类型 字节数 描述
bit
1 其值只能是0或1,这种数据类型用于存储只有两种可能值的数据,如 Yes或No、True或False、On或Off
bigint 8 存储-2~2³-1的整数
int 4 存储-2³~2³-1的整数
smallint 2 存储-32768~32767的整数
tinyint 1 存储0~255的整数
money 8 存储-9220亿~9220亿的数据,精确到货币单位的万分之一
smallmoney 4 存储-214748.3648~214748.3647的数据,精确到货币单位的万分之一
decimal
5~17 存储-10⁸-1~10⁸-1的固定精度和范围的数值型数据。使用这种数据类
型时,必须指定范围和精度。范围是小数点左右所能存储的数字的总位数 精度是小数点右边存储的数字的位数
numeric 5~17 numeric数据类型与decimal类型相同
2、数据库中的表
新知讲授
四
(2)近似数值类型
系统对数据类型定义精确到哪一位,这种数据类型称为近似数值类型。SQL Server 2017系统中提供了多种近似数值类型,如表所示。
数据类型 字节数 描述
float 4 或 8 存储- 1 . 79E+308~1 . 79E+308的任意数,最大精度是15位
real 4 存储- 3 .40E+38~3 .40E+38的浮点数,最大精度是7位
2、数据库中的表
新知讲授
四
(3)日期和时间数据类型
在 SQL Server 2017中,日期和时间数据类型除了 datetime 和 smalldatetime 以外,还增加 了 date 、time 、datetime2 和 datetimeoffset。下面对于常用的 datetime 、smalldatetime 、date 和time 进行简单介绍,如表2所示。
数据类型 字节数 描述
datetime 8 存储从1753年1月1日到9999年12月31日所有的日期和时间数 据,精确到1/300秒即3.33毫秒
smalldatetime 4 存储从1900年1月1日到2079年6月6日的日期和时间,精确到一分钟
date 3 存储从0001年1月1日到9999年12月31日的日期
time 3~5 使用24小时制存储时间,支持从0到7不同的精度
2、数据库中的表
新知讲授
四
(4)字符数据类型
字符数据类型是 SQL Server 2017 中最常用的数据类型之一,它可以分为 UNICODE 字 符数据类型和非 UNICODE 字符数据类型。下面简单介绍常用的非 UNICODE 字符数据类型,如表所示。
数据类型 长度 描述
char
1~8000 使用char数据类型存储数据时,每个字符占用一个字节的存储空
间,最长可以容纳8000个字符。使用它定义表中列的数据类型时,
要给定数据的最大长度。如果实际数据的字符长度小于给定的最大长 度时,则多余的字节会被空格填充;如果实际数据的字符长度大于给 定的最大长度时,则超过的字符将会被截断
varchar
1~8000 该数据类型的使用方式与char数据类型的使用方法基本相同。与 char不同的是,varchar数据类型的存储空间随存储在表列中的每一 个数据的字符的不同能自动调整
text 1~231- 该数据类型主要用来存储预计超过8000字符的变长字符数据,最 大长度可以达到2³¹-1个字符
2、数据库中的表
新知讲授
四
(4)字符数据类型
字符数据类型是 SQL Server 2017 中最常用的数据类型之一,它可以分为 UNICODE 字 符数据类型和非 UNICODE 字符数据类型。下面简单介绍常用的非 UNICODE 字符数据类型,如表所示。
数据类型 长度 描述
varchar(MAX)
1~2³¹-1 该数据类型主要用来存储预计超过8000字符的变长字符数据,最 大长度可以达到2-1个字符
2、数据库中的表
新知讲授
四
说明:在定义字符型常量、为字符数据类型赋值或定义日期时间型常量、为日期时间数
据类型赋值时,必须使用单引号将字符型或日期时间型常量括起来。
数据类型 长度 描述
varchar(MAX)
1~2³¹-1 该数据类型主要用来存储预计超过8000字符的变长字符数据,最 大长度可以达到2-1个字符
2、数据库中的表
新知讲授
四
CREATE TABLE 表名 --用于设置表名
(
列名数据类型[NOT NULL INULL],
列名数据类型 [NOT NULL INULL],
列名数据类型[NOT NULL INULL]
)
3.CREATE TABLE 语句格式
① 方括号([])中的内容为可以省略的选项或参数,竖线(1)表示如果要输入括号
里的内容,则只能选其中一个。
② NOT NULLI NULL 用来指定此列是否为空,如果省略,则默认为 NULL, 即可以 为空。
③ 使 用CREATE TABLE语句创建表时,各个列之间要用逗号(,)隔开,否则会出错。
2、数据库中的表
新知讲授
四
4. 标识列
(1)SQL Server中的标识列,又称标识字段或自增列(自动编号列)。这种字段具有以
下3种特点:
① 列的数据类型为不带小数的数值类型,如 decimal、int、numeric、smallint、bigint、tiny- int 。其中要注意的是,当选择 decimal 和 numeric 时,小数位数必须为零。若使用 tinyint 型数据,则只能向表中添加255条记录。
② 在进行插入数据的操作时,该列的值是由系统按设定的规律生成,不允许空值。
③ 列值不重复,具有标识表中每一行的作用,每个表只能有一个标识列。
2、数据库中的表
新知讲授
四
(2)创建一个标识列,通常要指定以下3个内容:
① 标识列类型必须是数值类型。
② 标识种子是指派给表中第一行的值,默认为1。
③ 标识增量是相邻两个标识值之间的增量,默认为1。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
案例3 使用对象资源管理器修改“图书信息管理”数据库中的“图书信息”表,要求如下:
(1)添加一个“备注”列,该列的数据类型为 char(5)。
(2)把“备注”列的数据类型更改为varchar(MAX)。
(3)删除“备注”列。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第1步:在对象资源管理器中依次展开“数据库”→ “图书信息管理”→ “表”节点, 然后右击“dbo.图书信息”表,选择“设计”命令,打开表设计器窗口,在该窗口的最后 一行添加列名“备注”,设置数据类型为“char(5)”, 允许 NULL 值,最后单击 按钮或单击 X 按钮保存对 “dbo. 图书信息”表的修改
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第2步:重新打开 “dbo. 图书信息”表的表设计器窗口,把“备注”列的数据类型改 为varchar(MAX),
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第3步:在 “dbo. 图书信息”表的表设计器窗口中右击“备注”列,选择“删除列”
命令即可删除“备注”列
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第3步:在 “dbo. 图书信息”表的表设计器窗口中右击“备注”列,选择“删除列”命令即可删除“备注”列
3、修改“图书信息”和“出版社”表结构
新知讲授
四
案例4 使用ALTER TABLE 语句修改“图书信息管理”数据库中的“出版社”表,要求如下 :(1)添加一个 “Email”列,该列的数据类型为 char(30)。
( 2 ) 把 “Email” 列的数据类型更改为 varchar(50)。
(3)删除 “Email” 列。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第1步:添加 “Email” 列。执行代码后,即添加了“Email” 列。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第 2 步 : 更 改 “Email” 数据类型。执行下列代码后,即将 “Email” 列的数据类型更改
为 varchar(50)。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
01
第3步:删除 “Email” 列。执行下列代码后,即将 “Email” 列删除了。
3、修改“图书信息”和“出版社”表结构
新知讲授
四
① 如果表中已经存在数据,在修改列的数据类型以及字符串类型的长度时不能与已有的 数据产生矛盾。修改 char和 varchar 类型的列长度时,每个数字或英文字母占一个字节, 一
个 汉 字 占 两 个 字 节 。
② 在修改表结构后,如果无法保存,会弹出相应的警告对话框。
提示
3、修改“图书信息”和“出版社”表结构
新知讲授
四
ALTER TABLE 语句用于更改表的结构,通过在该语句中使用各种子句可以添加、修改、 删除列和约束。下面介绍通过ALTER TABLE 语句来添加、修改和删除列的方法。
1. 用 ADD 子 句 添 加 列
3、修改“图书信息”和“出版社”表结构
新知讲授
四
ALTER TABLE 语句用于更改表的结构,通过在该语句中使用各种子句可以添加、修改、 删除列和约束。下面介绍通过ALTER TABLE 语句来添加、修改和删除列的方法。
2. 用 ALTER COLUMN 子句修改列
3、修改“图书信息”和“出版社”表结构
新知讲授
四
ALTER TABLE 语句用于更改表的结构,通过在该语句中使用各种子句可以添加、修改、 删除列和约束。下面介绍通过ALTER TABLE 语句来添加、修改和删除列的方法。
3. 用 DROP COLUMN 子句删除列
一次可以删除一个或多个列,如果有多个列,则列之间用逗号(,)隔开。
4、删除“图书信息”和“出版社”表
新知讲授
四
删除表的操作与删除数据库的操作相似,只需指定要删除的表名即可。本活动将 介绍两种删除表的方法: 一是通过对象资源管理器来删除表,二是通过 DROP TABLE语句删除表。
温馨提示
下面是一个简单的表格,概述了数据库管理系统(DBMS)的一些关键概念:
| 序号 | 概念 | 描述 |
|------|------------------|--------------------------------------------------------------|
| 1 | 数据库管理系统(DBMS) | 一种软件系统,用于创建、查询、更新和管理数据库。 |
| 2 | 数据库(Database) | 存储在DBMS中的数据集合,包含表、视图、存储过程等。 |
| 3 | 表(Table) | 数据库中的基本存储单元,由行(记录)和列(字段)组成。 |
| 4 | 索引(Index) | 用于提高数据检索速度的数据库对象。 |
| 5 | 事务(Transaction) | 一系列操作,要么全部完成,要么全部不完成,确保数据一致性。 |
| 6 | 存储过程(Stored Procedure) | 预编译的SQL语句集合,用于执行数据库操作。 |
| 7 | 触发器(Trigger) | 在特定数据库操作发生时自动执行的存储过程。 |
| 8 | 视图(View) | 虚拟的表,其内容由SQL查询定义,用于简化查询和提高安全性。 |
| 9 | SQL Server 特定概念 | 包括SSMS、SSIS、SSAS、SSRS等,提供管理和开发数据库的工具。 |
| 10 | 安全性(Security) | 包括用户认证、权限控制和加密技术,保护数据安全。 |
| 11 | 备份与恢复(Backup and Recovery) | 确保数据持久性和在故障时的数据恢复。 |
| 12 | 性能优化(Performance Tuning) | 包括查询优化、索引优化等,提高数据库性能。 |
请注意,这个表格只是一个简单的概述,每个概念都可以展开更详细的解释和讨论。
师生互动
五
将学生分成小组,按照课中所讲内容,负责总结本节课学习案例 ,以小组的形式归纳问题,下节课随机汇报。
随堂练习
六
1.在输入数据的过程中,如果要取消正在输入的数据,可以直接按( ) 键。
A.Esc
B.Shift
C.H
D.Ctrl
答案:A
解析:在输入数据的过程中,如果要取消正在输入的数据,可以直接按Esc键
随堂练习
六
2.在更改某个数据的过程中要取消更改,也可以直接按( ) 键。
A.Esc
B.Shift
C.H
D.Ctrl
答案:A
解析:在更改某个数据的过程中要取消更改,也可以直接按Esc键
随堂练习
六
3.CREATE TABLE 语句里的 NULL或者 NOT NULL 表示该列内容是否允许为( )。
A. 数据内容
B. 空
C. 数据形式
D. 自动生成
答案:B
解析:CREATE TABLE 语句里的 NULL或者 NOT NULL 表示该列内容是否允许为空
随堂练习
六
4.表是( )数据库中所有数据的数据库对象。
A. 存放
B. 管理
C. 连接
D. 总结
答案:A
解析:表是存放数据库中所有数据的数据库对象
随堂练习
六
5.系统对数据类型定义精确到哪一位,这种数据类型称为( )类型。
A. 字符数据
B. 日期和时间数据
C. 精确数值
D. 近似数值
答案:D
解析:系统对数据类型定义精确到哪一位,这种数据类型称为近似数值类型
随堂练习
六
6.使用char数据类型存储数据时,每个字符占用一个字节的存储空
间,最长可以容纳( )个字符。
A. 6000
B. 7000
C. 8000
D. 9000
答案:C
解析:使用char数据类型存储数据时,每个字符占用一个字节的存储空
间,最长可以容纳8000个字符
随堂练习
六
7.SQL Server数据库系统使用数据库中( )来进行事务的恢复。
A. 事务日志信息
B. 数据文件
C. 存储数据
D. 系统数据库
答案:A
解析:SQL Server数据库系统使用数据库中事务日志信息来进行事务的恢复
随堂练习
六
8.ALTER TABLE 语句用于更改表的( )。
A. 属性
B. 结构
C. 形式
D. 复制
答案:B
解析:ALTER TABLE 语句用于更改表的结构
课堂小结
七
谢谢
$$