(本科)第7章MySQL表定义与完整性约束控制ppt课件.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《(本科)第7章MySQL表定义与完整性约束控制ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)第7章MySQL表定义与完整性约束控制ppt课件.pptx(58页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课程主讲人:(本科)第7章-MySQL表定义与完整性约束控制ppt课件中国农业大学 李辉p表的基本概念p数据类型p运算符p表的操作pMySQL约束控制p知识点小结p本章实验p表是数据库中存储数据的基本单位,它由一个或多个字段组成,每个字段需要有对应的数据类型数据类型。pMySQL数据库中表的管理管理,包括表的作用、类型,构成、创建、删除和修改等 。p本章先讲述了表的基本概念,MySQL支持的数据类型和运算符等一些基础,接着又讲述了表的基本操作,有创建、查看、修改、复制、删除。最后讲述了MySQL的约束控制,如何定义和修改字段的约束条件。p表的基本概念表的基本概念p数据类型p运算符p表的操作pM
2、ySQL约束控制p知识点小结p本章实验p数据库与表之间的关系是数据库是由各种数据表组成的,数据表表是数据库中最重要的对象,用来存储存储和操作操作数据的逻辑结构。p表由列和行组成,列是表数据的描述,行是表数据的实例。一个表包含若干字段或记录。p表的操作包括创建创建新表、修改修改表和删除删除表。这些操作都是数据库管理中最基本,也是最重要的操作。1.建表原则原则(1)应按照一定原则对信息进行分类。(2)对表进行规范化设计规范化设计,以消除表中存在的冗余,保证一个表只围绕一个主题,并使表容易维护。2.数据库表的信息存储信息存储分类原则(1)每个表应该只包含关于一个主题的信息。(2)表中不应包含重复信息
3、。p表的基本概念表的基本概念p数据类型数据类型p运算符p表的操作pMySQL约束控制p知识点小结p本章实验p为每张表的每个字段选择合适的数据类型是数据库设计过程中一个重要的步骤。p好处:可以有效地节省数据库的存储空间存储空间,包括内存和外存,同时也可以提升数据的计算性能计算性能,节省数据的检检索索时间。p常用的数据类型如下:pMySQL支持所有的ANSI/ISO SQL 92数字类型(ANSI,American National Standards Institute,美国国家标准局)。p数字分为整数整数和小数小数。 整数:用整数类型表示。 INTEGER、SMALLINT、TINYINT、M
4、EDIUMINT和BIGINT INT与INTEGER两个整数类型是同名词同名词,可以互换。 小数: 浮点数类型:单精度浮点数FLOAT类型和双精度浮点数DOUBLE类型 定点数类型:DECIMAL类型,DEC和DECIMAL这两个定点数类型是同名词。p浮点数和定点数都可以在类型后面加上(M,D)来表示,M表示该数值一共可以显示表示该数值一共可以显示M位数字,位数字,D表示该数值小数表示该数值小数点后的位数。点后的位数。 当在类型后面指定(M,D)时,小数点后面的数值需要按照D来进行四舍五入四舍五入。 当不指定(M,D)时,浮点数将按照实际值实际值来存储,而DECIMAL默认的整数位数为10,
5、小数位数为0。p建表时数字类型的选择应遵循的原则:1)选择最小最小的可用类型,如果改字段的值不会超过127,则使用TINYINT比INT效果好。2)对于完全都是数字的,即无小数点无小数点时,可以选择整数类型,比如年龄。3)浮点类型用于可能具有的小数部分小数部分的数,比如学生成绩。4)在需要表示金额金额等货币类型货币类型时优先选择DECIMAL数据类型pMySQL主要支持的日期日期类型:(1)DATE表示日期,默认格式为YYYY-MM-DD;(2)TIME表示时间,默认格式为HH:ii:ss;(3)YEAR表示年份;(4)DATATIME与=TIMESTAMP是日期和时间的混合类型,默认格式为Y
6、YYY-MM-DD HH:ii:SS。p从形式上来说,MySQL日期类型的表示方法与字符串字符串的表示方法相同(使用单引号括起来);p本质上,MySQL日期类型的数据是一个数值类型数值类型,可以参与简单的加、减运算。p字符串类型的数据分为: 普通的文本字符串类型普通的文本字符串类型(CHAR和VARCHAR) CHAR类型的长度被固定为创建表所声明的长度,取值在1255之间; VARCHAR类型的值是变长的字符串,取值和CHAR一样。 可变类型可变类型(TEXT和BLOB) 大小可以改变,其中TEXT类型适合存储长文本,而BLOB类型适合存储二进制数据,支持任何数据,如文本、声音和图像等。 特
7、殊类型(复合类型复合类型)(SET和ENUM)。p 特殊类型(SET和ENUM): ENUM类型的字段只允许从一个集合中取得某一个值只允许从一个集合中取得某一个值,有点儿类似于单选按钮的功能。 Set类型的字段允许从一个集合中取得多个值从一个集合中取得多个值,有点儿类似于复选框的功能。 一个ENUM类型的数据最多可以包含65535个元素,一个SET类型的数据最多可以包含64个元素。 一个ENUM类型只允许从一个集合中取得一个值;而SET类型允许从一个集合中取得任意多个值。p 在创建表时,使用字符串类型时应遵循以下原则:1)从速度速度方面考虑,要选择固定的列,可以使用CHAR类型。2)要节省空间
8、节省空间,使用动态的列,可以使用VARCHAR类型。3)要将列中的内容限制在一种选择限制在一种选择,可以使用ENUM类型。4)允许在一个列中有多于一个的条目有多于一个的条目,可以使用SET类型。5)如果要搜索的内容不区分大小写不区分大小写,可以使用TEXT类型。6)如果要搜索的内容区分大小写区分大小写,可以使用BLOB类型。p MySQL主要支持7种二进制类型:binary、varbinary、bit、tinyblob、blob、mediumblob和longblob。p 二进制类型的字段主要用于存储由O和1组成的字符串,从某种意义上讲,二进制类型的数据是一种特殊格式的字符字符串串。p 二进制
9、类型与字符串类型的区别: 字符串类型的数据按字符字符为单位进行存储,因此存在多种字符集、多种字符序; 除了bit数据类型按位位为单位进行存储,其他二进制类型的数据按字节字节为单位进行存储,仅存在二进制字符集binary。p 选择数据类型的原则:(1)在符合应用要求(取值范围、精度)的前提下,尽量使用“短”数据类型。(2)数据类型越简单简单越好。(3)尽量采用精确小数类型精确小数类型(例如decimal),而不采用浮点数类型。 (4)在MySQL中,应该用内置的内置的日期和时间数据类型,而不是用字符串来存储日期和时间。(5)尽量避免避免NULL字段,建议将字段指定为NOT NULL约束。p表的基
10、本概念p数据类型p运算符运算符p表的操作pMySQL约束控制p知识点小结p本章实验p 运算符是用来连接表达式中各个操作数据的符号,其作用是用来指明对操作数所进行的运算。p MySQL数据库支持运算符的使用,通过运算符可以更加灵活的操作数据表中的数据。p MySQL主要支持算术运算符算术运算符、比较运算符比较运算符、逻辑运算符逻辑运算符和位运算符四种类型。p MySQL数据库支持的算术运算符包括加、减、乘、除和取余运算。他们是最常用的、最简单的一类运算符。p MySQL数据库允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真返回1,为假返回0,不确定返回NULL。p 逻辑运算符,也称
11、为布尔运算符,判断表达式的真假。p表的基本概念p数据类型p运算符p表的操作表的操作pMySQL约束控制p知识点小结p本章实验p 表是数据库中最为重要的数据库对象。p 创建表前,需要根据数据库设计的结果确定表名、字段名及数据类型、约束等信息。p 还要为每张表选择一个合适的存储引擎存储引擎。p 表的操作: 创建表,查看表,修改表,复制表,删除表p 表管理中的注意事项p 在同一个数据库中,表名不能有重名表名不能有重名。p 创建数据表可使用CREATE TABLE命令。p 语法格式: CREATE TEMPORARY TABLE IF NOT EXISTS table_name ( column_de
12、finition , | index_definition ) table_option select_statement; p 说明:语法格式中“”表示可选的。1)TEMPORARY:使用该关键字表示创建临时表。p 说明(续):2) IF NOT EXISTS:如果数据库中已经存在某个表,再来创建一个同名的表,这时会出现错误,为了避免错误信息,可以在创建表的前面加上这个判断,只有该表目前不存在时才执行CREATE TABLE操作。( 3)table_name:要创建的表名。( 4)column_definition:字段的定义。包括指定字段名、数据类型、指定字段名、数据类型、是否允许空值,指
13、定默认值、主键约束、唯一性约束、注释字是否允许空值,指定默认值、主键约束、唯一性约束、注释字段名、是否为外键,以及字段类型的属性段名、是否为外键,以及字段类型的属性等。p 说明(续):col_name type NOT NULL | NULL DEFAULT default_valueAUTO_INCREMENT UNIQUE KEY | PRIMARY KEY COMMENT String reference_definition其中col_name:字段名。type:声明字段的数据类型NOT NULL 或者NULL :表示字段是否可以为空值DEFAULT:指定字段的默认值。p 说明(续):
14、AUTO_INCREMENT:设置自增属性,只有整型类型才能设置此属性RIMARY KEY:对字段指定主键约束UNIQUE KEY:对字段指定唯一性约束reference_definition:指定字段外键约束( 5)index_definition:为表的相关字段指定索引。p 设置表的存储引擎存储引擎、默认字符默认字符集以及压缩类型压缩类型:(1)向create table语句末尾添加engine选项,即设置该表的存储引擎语法格式:Engine=存储引擎类型 (2) 向create table语句末尾添加default charset选项,即设置该表的字符集语法格式:Default char
15、set=字符集类型 (3) 如果希望压缩索引中的关键字,使索引关键字占用更少的存储空间,可以通过设置pack_keys选项实现(注意:该选项仅对MyISAM存储引擎的表有效)语法格式:Pack_keys=压缩类型 1)显示表的名称名称可以使用SHOW TABLES语句来显示指定数据库中存放的所有表名语法格式: SHOW TABLES ; 2)显示表的结构结构查看表结构有简单查询和详细查询,可使用DESCRIBE/DESC语句和SHOW CREATE TABLE语句语法格式: DESCRIBE 表名; DESC 表名; SHOW CREATE TABLE 表名; ALTER TABLE用于更改原
16、有的结构更改原有的结构。语法格式:alter ignore table table_namealter_specification , alter_specificationadd column column_definition first | after col_name/添加字段| alter column col_name set default literal | drop default /修改字段| change column old_col_name column_definition first| after col_name/重命名字段| modify column col
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 本科 MySQL 定义 完整性 约束 控制 ppt 课件
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内