数据库构建与管理(SQL SERVER)教案系列第三章创建数据库和数据表2
SQL Server数据库技术及应用教程(SQL Server 2016)第3章 数据库设计
• 4.Boyce-Codd范式(BCNF) • BCNF是由Boyce和Codd提出来的,通常认为BCNF是修正的3NF,有时也称为扩
充的3NF。 • 定义7 关系模式R<U, F>属于1NF,若X→Y,且Y不是X的子集,X必含有码,那
么称R<U, F>是BCNF关系模式。 • 【例3-4】 学生_教师_课程表存储了学生选,但Y X,则称X→Y是非平凡的函数依
赖。若不特别声明,则总是讨论非平凡的函数 依赖。
• ② X→Y,但YX,则称X→Y是平凡的函数依赖。 • ③ 若X→Y,则X称为决定因素。 • ④ 若X→Y,Y→X,则记作X←→Y。 • ⑤ 若Y不函数依赖于X,则记作X Y。
• 3.1.2 范式
• 1.第一范式(1NF)
• 定义4 如果关系模式R,其所有的属性均为简单属 性,即每个属性都是不可再分的,则称R属于1NF, 记为R∈1NF。不满足1NF条件的关系模式称为非规 范化关系模式。在关系型数据库系统中只讨论规范 化的关系模式,凡非规范化关系模式必须化成规范 化的关系模式。方法是:在非规范化的关系模式中 去掉组属性和重复数据项,即让所有的属性均为原 子项,就满足1NF的条件,变为规范化的关系模式。
• 图书表中“图书号”为关键字。对于非码属性“类型号”和 “类型名”来说,它们传递函数依赖于关键字,所以图书表不 符合3NF。可以将表3-6分解为两个表,见表3-7和表3-8
经过分解后,这两个关系表都不存在传递函数依赖关系,所以它们都符 合3NF。 一个关系模式达到3NF后,基本解决了异常问题,但不能彻底解决数据冗 余问题。
• 定义2 在R(U)中,如果X→Y,并且对于X的 任何一个真子集X',都有X' Y,则称Y对X完 全函数依赖,记作:X Y。
SQL Server第3章 表的创建和管理
4、约束管理
4)默认约束(DEFAULT)
默认约束是用来给表中某列赋予一个常量值(默认值), 当向该表插入数据时,如果用户没有明确给出该列的值, SQL Server会自动为该列输入默认值。每列只能有一个 DEFAULT约束。
2)表结构的修改
① 使用SSMS修改表结构
演示……
3、表结构的创建、修改和删除
2)表结构的修改
② 使用T-SQL语句修改表结构
修改表结构的语句为ALTER TABLE。语法格式如下:
ALTER TABLE tbl_name { ADD column_name date_type [DEFAULT contant_expression][IDENTITY(SEED,INCREMENT)] [NULL | NOT NULL] | DROP COLUMN column_name | ALTER COLUMN column_name new_datetype [NULL | NOT NULL ] }
INSERT student (sNo, sName, sex, birthday, entryDate, sDept, remark) VALUES(‘1512053101’,‘张明’,‘男’,‘1997-3-2’,‘2015-9-13’,‘网通学院 ’,’班长’)
INSERT Course (cNo, cName, credit, remark) VALUES(‘02001’,‘网络基础’,3,‘网络专业基础课’)
例3-16:创建成绩表(score),并设置复合主键。
4、约束管理
2)唯一性约束(UNIQUE)
唯一性约束是用来限制不受主键约束的列上的数据的唯一 性,一个表上可以放置多个UNIQUE约束。
数据库构建与管理(SQL SERVER)教案系列第三章创建数据库和数据表1
SQL Server的数据库文件和文件组必须遵循以下规则:
★一个数据库主数据文件只能有一个。
★一个文件、文件组、事务日志文件只能被一个数据库使用。
※主数据文件:扩展名为.mdf,包含数据库系统信息并可存放用户数据库数据,每个数据库只有一个主数据文件。辅助数据文件:扩展名为.ndf,数据量很大时使用,可存放在不同的磁盘驱动器上,以便得利用多个磁盘上的存储空间并提高数据存取的并发性。
2)文件组
SQL Server数据库还允许将多个数据库文件组成一个文件组进行整体管理。比如可以设置三个数据文件data1.mdf、data2.ndf、data3.ndf并分别创建在三个磁盘上,也可以创建两个文件组group1、group2,将data1.mdf、data2.ndf加入group1,而将data3.ndf加入group2。
数据库构建与管理(SQL SERVER)教案
课题
第3章创建数据库和数据表பைடு நூலகம்
授课形式
新授
授课课时
共2课时,第1、2课时
使用教具
多媒体
课前准备
PPT
教学目标
掌握数据库的创建、修改、删除、分离、附加
教学重点
数据库的创建、分离、附加
教学难点
数据库的创建
更新、补充
删节内容
板书设计
一、创建数据库
主数据文件(Primary file):存放数据和启动信息。每个数据库都必须有且只能有一个主数据文件,其扩展名为.MDF。
SQL Server 2012数据库管理与开发第3章 创建和管理数据库
3.3 数据库操作
• 3.3.1 创建数据库 • 1. 以界面方式创建数据库
图3.1 新建数据库
图3.2 创建数据库名称
图3.3 创建一个名称为“mrgwh”的数据库
3.3.2 修改数据库
1.以界面方式修改数据库
图3.4 选择数据库属性
单击此按钮修改数据库“所有者”
图3.5 “文件”选项卡
• (2)标识符的后续字符可以是以下3种。
• 统一码(Unicode)2.0标准中所定义的字 母。
• 来自拉丁字母或其他国家/地区脚本的十进 制数字。
• “@”符号、美元符号“$”、数字符号 “#”或下划线“_”。
• (3)标识符不允许是Transact-SQL的保 留字。
• (4)不允许嵌入空格或其他特殊字符。
•
② 文件或文件组不能由一个以上的数
据库使用。
•
③ 数据和事务日志信息不能属于同一
文件或文件组。
•
④ 日志文件不能作为文件组的系统数据库
• (1)Master数据库 • (2)Tempdb数据库 • (3)Model数据库 • (4)Msdb数据库
3.2 SQL Server的命名规范
• 1.标识符格式
• 在定义标识符时必须遵守以下规定:
• (1)标识符的首字符必须是下列字符之一。
• 统一码(Unicode)2.0标准中所定义的字母,包括拉丁 字母a-z和A-Z,以及来自其他语言的字符。
• 下划线“_”、符号“@”或者数字符号“#”。
• 在SQL Server中,某些处于标识符开始位置的符号具有 特殊意义。以“@”符号开始的标识符表示局部变量或参 数;以一个数字符号“#”开始的标识符表示临时表或过 程,如表“#gzb”就是一张临时表;以双数字符号“##” 开始的标识符表示全局临时对象,如表“##gzb”则是全 局临时表。
实验一:在SQLServer中创建数据库和表
实验⼀:在SQLServer中创建数据库和表实验⼀:在SQL Server中创建数据库和表1.实验⽬的1) 熟悉SQL Server2005的企业管理器环境;2) 掌握使⽤SQL Server2005企业管理器创建和管理数据库和数据表的⽅法,掌握使⽤SQL管理数据库和数据表的⽅法。
2.实验内容1) 熟悉SQL Server 2005企业管理器环境;2) 使⽤企业管理器创建“JXGL”数据库;3) 在JXGL库中创建学⽣表Student,课程表Course以及选修成绩表SC;4) 练习使⽤SQL语句创建和管理数据库、数据表。
3.实验步骤1) 启动SQL Server企业管理器,打开“SQL Server Enterprise Mananger”窗⼝,并在左边的⽬录树结构中选择“数据库”⽂件夹。
2) 单击右键,选择“新建数据库”命令,打开“新建数据库” 对话框,在“数据库名称”框内输⼊名称JXGL,注意数据⽂件和⽇志⽂件的属性设置................。
3) 单击“确定”按钮,完成JXGL数据库的创建。
4)在左边的⽬录树中展开“数据库”下刚才创建的 “JXGL” ⽂件夹,然后在“表”对象上单击右键,选择“新建表”,右边窗格中显⽰SQL Server 2005的表设计器。
5)在表设计器窗⼝上部,每⼀⾏描述表的⼀个属性列,分别设置列名、列的数据类型以及是否允许空值。
将STUDENT表(表结构如表1所⽰)的各列属性依次输⼊到⽹格中,如下图所⽰。
表1:Student表结构列名数据类型长度是否允许为空值默认值说明Sno char 5 N 主码name varchar 10 Nsex char 2 N 男birth datetime Ndept varchar 20 Y ⽣物信息address varchar 50 Y6) 选择“Sno”属性,单击右键,在弹出菜单中选择“设置主键”。
将“Sno”设置为Student关系的主码。
SQL Server数据库第3章
3.1.2 管理数据库
• 随着数据库的增长或变化,用户可能需要对数 据库进行管理,主要包括查看数据库信息、打 开数据库、更改数据库名称、修改数据库容量、 删除数据库等操作。
第3章 数据库与表
主要内容:
3.1
创建和管理数据库
3.2
创建和管理表
3.3
数据完整性
3.4
本章小结
总体要求:
• 掌握数据库的创建和管理 • 掌握表的创建和管理 • 掌握数据完整性的概念
3.1创建和管理数据库:
3.1.1
创建数据库
3.1.2
管理数据库
3.1.3
分离和附加数据库
3.1.1 创建数据库
• SQL Server数据库都由表、视图、存储过程、 用户、角色、规则、默认等数据库对象组成。 SQL Server中的每个数据库名都必须要符合系 统标识符的命名规则,应该使用有一定意义的 并且易于记忆的的名字来命名数据库。创建数 据库,必须先确定数据库的名称、所有者(创 建数据库的用户)、大小,以及用于存储该数 据库的文件和文件组。
2.使用T-SQL语句创建数据库
• 使用T-SQL语言创建数据库的命令是:
CREATE DATABASE。
• 最简单的方法就是创建数据库时使用默认的数 据库参数。其语法格式如下:
CREATE DATABASE database_name
其中database_name是新数据库的名称。
• 【例3-3】使用T-SQL语句创建“Product”数 据库,使用默认的数据库参数。
SQLServer数据库教案
教案:SQL Server数据库教案第一章:SQL Server概述1.1 课程目标了解SQL Server的发展历程掌握SQL Server的基本概念和特点了解SQL Server的体系结构1.2 教学内容SQL Server的发展历程SQL Server的基本概念和特点SQL Server的体系结构1.3 教学方法讲授法案例分析法1.4 教学资源-PPT-案例文件1.5 教学步骤1. 介绍SQL Server的发展历程2. 讲解SQL Server的基本概念和特点3. 讲解SQL Server的体系结构第二章:SQL Server数据库的创建和管理2.1 课程目标掌握SQL Server数据库的创建和管理方法2.2 教学内容数据库的基本概念数据库的创建和管理方法2.3 教学方法讲授法案例分析法2.4 教学资源-PPT-案例文件2.5 教学步骤1. 介绍数据库的基本概念2. 讲解数据库的创建和管理方法3. 分析案例并演示操作过程第三章:SQL Server表的设计和管理3.1 课程目标掌握SQL Server表的设计和管理方法3.2 教学内容表的基本概念表的设计和管理方法3.3 教学方法讲授法案例分析法3.4 教学资源-PPT-案例文件3.5 教学步骤1. 介绍表的基本概念2. 讲解表的设计和管理方法3. 分析案例并演示操作过程第四章:SQL Server索引和约束的应用4.1 课程目标掌握SQL Server索引和约束的应用方法4.2 教学内容索引和约束的基本概念索引和约束的应用方法4.3 教学方法讲授法案例分析法4.4 教学资源-PPT-案例文件4.5 教学步骤1. 介绍索引和约束的基本概念2. 讲解索引和约束的应用方法3. 分析案例并演示操作过程第五章:SQL Server数据查询和操作5.1 课程目标掌握SQL Server数据查询和操作方法5.2 教学内容数据查询的基本概念数据查询和操作方法5.3 教学方法讲授法案例分析法5.4 教学资源-PPT-案例文件5.5 教学步骤1. 介绍数据查询的基本概念2. 讲解数据查询和操作方法3. 分析案例并演示操作过程第六章:SQL Server数据传输6.1 课程目标掌握SQL Server中数据传输的基本方法和技巧。
数据库 第3章 SQL_Server数据表的管理与维护 教学课件
2
3.1数据表的创建和管理
• • • • 3.1.1 使用企业管理器创建数据表 3.1.2 使用T-SQL语言创建数据表 3.1.3 使用企业管理器对数据表进行维护 3.1.4 使用T-SQL语言对数据表进行维护
3
3.1.1 使用企业管理器创建数据表
数据库技术与应用基础教材编写组
4
3.1.2 使用T-SQL语言创建数据表
11
3.1.4 使用T-SQL语言对数据表进行维护
数据库构建与管理(SQL SERVER)教案系列第三章创建数据库和数据表3
1.点击表节点
2.右击要删除的表
3.删除
注意:如果删除的表有foreign key约束,必须先删除约束
(二)使用transact-SQL语句删除数据库
DROP TABLE表名
三、复习本章知识点
四、学生上机练习P80能力训练
4.删除列
5.删除primary key:右击包含主键的行——移除主键
6.删除foreign key:选择需要删除的foreign key约束——选择删除
(二)使用transact-SQL语句修改数据表
1.增加一个列:
ALTER TABLE表名ADD列名列的相关属性设置
2.修改一个列的数据属性:ALTER TABLE表名MODIFY列名数据类型
作业布置
教学后记
教学过程
主要教学内容及步骤
教学方法
引入
新授
总结
复习上节课内容,引入新课
一、修改数据表
(一)使用Microsoft sql server management studio修改数据表
1.修改列小数位数
2.修改列标识属性
如果希望重新定义在表中添加新记录时该列中自动生成并存储于列中的序列号,则可以更改该列的标识属性。在每个表中只能设置一个列的标识属性。具有标识属性的列包含系统生成的连续值,该值唯一地标识表中的每一行(例如,雇员标识号)。向具有标识列的表中插入值时,Microsoft SQL Server自动基于上次使用的标识值(标识种子属性)和创建列时指定的增量值(标识增量属性)生成下一个标识符。
注意:
只能针对不允许空值并且数据类型为decimal、int、numeric、smallint、bigint或tinyint的列设置标识属性。
SQL Server 2005数据库应用技术第3章 创建和管理表
3.1 SQL Server 2005表的基本知识 3.1.2
3.1 SQL Server
表的设计—数据类型
2005表的基
本知识 3.2 创建表 3.3 管理表 3.4 维护表中数 据
SQL Server定义了丰富的基本数据类型,包括:字符数 据类型、二进制数据类型、日期时间数据类型、逻辑数 据类型、数值数据类型,用于各类数据值的存储、检索 和解释。还有可变数据类型、表类型等。另外,SQL Server允许用户基于系统的数据类型定义自定义数据类 型。
了解SQL Server的数据类型。 掌握创建和管理表的方法。 掌握表中数据维护的方法。
3.1 SQL Server 2005表的基本知识 3.1.1
3.1 SQL Server
表的类型
2005表的基
本知识 3.2 创建表 3.3 管理表 3.4 维护表中数 据
SQL Server 2005的表包括系统数据表、已分区表、用户 自定义数据表和临时表。 SQL Server 2005中的系统数据存储在隐藏的“资源”表 中,这些表只能被服务器自身直接访问。 已分区表是将数据水平划分为多个单元的表,这些单元 可以分布到数据库中的多个文件组中。 以下主要了解用户自定义数据表和临时表。
3.1 SQL Server
表的设计—数据类型
6.其他数据类型
除了以上5种基本数据类型,SQL Server还支持其他一些 数据类型,如表5-8所示。
2005表的基
本知识 3.2 创建表 3.3 管理表 3.4 维护表中数 据
3.1 SQL Server 2005表的基本知识 3.1.2
《SQL Server 2005 数据库应用技术》
3.1 SQL Server
数据库应用技术教程(SQL Server 2017)课件第3章 SQL2017数据表的创建和管理
第三章 SQL2017数据库数据表的创建和管理
学习目标
❖掌握SQL Server2017中的数据类型; ❖ 掌握建立数据表的方法; ❖ 掌握查看、修改和删除数据表的方法; ❖掌握使用主键约束和惟一约束保证数据表的完整性、使用检查约束
、默认值保证列的完整性; ❖ 掌握使用主键和外键来保证数据表之间的完整性; ❖ 掌握表中数据的添加、修改和删除的方法。
数据类型
数据类型--数字型
数据类型
说明
bigint
-263 (-1.8E19 ) ~ 263-1 (1.8E19 )的整型数
int
-231 (-2 147 483 648) ~ 231-1 (2 147 483 647)的整型数
smallint -215 (-32 768) ~ 215-1 (32 767)的整型数
▪ 类型与长度限制:方便计算机操作 ▪ 取值范围限制:防止属性值与应用
语义矛盾
语义许可取值范围约束例:
成绩取 [0 .. 100], {优、良、中、及格、不及格}
约束概述
❖ 约束定义
❖ 约束(Constraint)是Microsoft SQL Server 2017提供的自动保持数据库完整 性的一种方法。约束就是限制,定义约束就是定义可输入表或表的单个列中的 数据的限制条件。
❖ 约束分类
▪ 主关键字约束(Primary Key Constraint) ▪ 外关键字约束(Foreign Key Constraint) ▪ 惟一约束(Unique Constraint) ▪ 检查约束(Check Constraint) ▪ 默认约束(Default Constraint)
主键约束
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.修改数据类型的精度
总结本节课内容
讲述
提问
师:
举例
讲解
生:理解
记忆
储和比较字符所使用的规则。"
排序规则名称由两部份构成,前半部份是指本排序规则所支持的字符集。
如:
Chinese_PRC_CS_AI_WS
前半部份:指UNICODE字符集,Chinese_PRC_指针对大陆简体字UNICODE的排序规则。
排序规则的后半部份即后缀含义:
_BIN二进制排序
_CI(CS)是否区分大小写,CI不区分,CS区分
(二)使用transact-SQL语句创建数据表
CREATE TABLE
二、修改数据表
(一)使用Microsoft sql server management studio修改数据表
修改列的数据类型:
右击要修改的表——修改——选择要修改的列——单击数据类型的单元格——保存
作业布置教学后记教来自过程主要教学内容及步骤
数据库构建与管理(SQL SERVER)教案
课题
第3章创建数据库和数据表
授课形式
新授
授课课时
共2课时,第3、4课时
使用教具
多媒体
课前准备
PPT
教学目标
掌握数据表的创建、修改
教学重点
数据表的创建
教学难点
数据表的创建
更新、补充
删节内容
板书设计
一、创建数据表
(一)使用Microsoft sql server management studio创建数据表
区分假名:如果想让比较将片假名和平假名日语音节视为不等,请选择该选项。
区分宽度:如果想让比较将半角字符和全角字符视为不等,请选择该选项
二、修改数据表
(一)使用Microsoft sql server management studio修改数据表
1.修改列的数据类型:
右击要修改的表——修改——选择要修改的列——单击数据类型的单元格——保存
[入库单编号] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL primary key,
[入库日期] [datetime] NULL,
[入库单状态] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[经手人工号] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[供应商编号] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[仓库管理员] [varbinary](50) NULL)
首先,collate是一个子句,可应用于数据库定义或列定义以定义排序规则,或应用于字符串表达式以应用排序规则投影。什么叫排序规则呢?MS是这样描述的:"在Microsoft SQL Server 2000中,字符串的物理存储由排序规则控制。排序规则指定表示每个字符的位模式以及存
[审核人工号] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[审批人工号] [varchar](50) COLLATE Chinese_PRC_CI_AS NULL,
[备注] [varbinary](4000) NULL,
[仓库编号] [varbinary](50) NULL,
_AI(AS)是否区分重音,AI不区分,AS区分
_KI(KS)是否区分假名类型,KI不区分,KS区分
_WI(WS)是否区分宽度WI不区分,WS区分
区分大小写:如果想让比较将大写字母和小写字母视为不等,请选择该选项。
区分重音:如果想让比较将重音和非重音字母视为不等,请选择该选项。如果选择该选项,
比较还将重音不同的字母视为不等。
7.设置约束:单击要添加约束的表——右击约束——新建约束——表达式里输入约束表达式——设置何时强制约束
8.制定默认值:右击需要设置默认值的表——修改——选择要设置默认值的字段——在列属性选项卡的默认值或绑定中输入新的默认值
(二)使用transact-SQL语句创建数据表
CREATE TABLE [dbo].[入库单表](
教学方法
引入
新授
总结
复习上节课内容,引入新课
一、创建数据表
(一)使用Microsoft sql server management studio创建数据表
1.右击表节点
2.新建表
3.输入列名,选择字段数据类型,并在下方的字段属性区设置字段属性
4.设置主键
5.保存表
6.如果存在外键,设置外键:右击需要设置外键的表——修改——关系按钮——添加——表和列规范——选择主键表、以及所涉及的列——选择外键表所涉及的列——保存更改