收藏 分销(赏)

mysql数据库PPT.ppt

上传人:天**** 文档编号:11639322 上传时间:2025-08-02 格式:PPT 页数:28 大小:353.04KB 下载积分:10 金币
下载 相关 举报
mysql数据库PPT.ppt_第1页
第1页 / 共28页
mysql数据库PPT.ppt_第2页
第2页 / 共28页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,Click to edit Master title style,Click to edit Master text styles,第,6,章 创建、修改和删除表,表是数据库存储数据的基本单位。一个表包含若干个字段或记录。表的操作包括创建新表、修改表和删除表。这些操作都是数据库管理中最基本,也是最重要的操作。在这一章中将讲解如何在数据库中操作表,内容包括。,创建表的方法,表的完整性约束条件,查看表结构的方法,修改表的方法,删除表的方法,6.1,创建表,创建表是指在已存在的数据库中建立新表。这是建立数据库最重要的一步,是进行其他表操作的基础。本节主要讲解如何创建表。,6.1.1,创建表的语法形式,MySQL,中,创建表是通过,SQL,语句,CREATE TABLE,实现的。其语法形式如下:,CREATE TABLE,表名,(,属性名 数据类型,完整性约束条件,属性名 数据类型,完整性约束条件,.,属性名 数据类型,);,6.1.2,设置表的主键,主键是表的一个特殊字段。该字段能惟一地标识该表中的每条信息。主键和记录的关系,如同身份证和人的关系。主键用来标识每个记录,每个记录的主键值都不同。身份证是用来标明人的身份,每个人都具有惟一的身份证号。设置表的主键指在创建表时设置表的某个字段为该表的主键。,主键的主要目的是帮助,MySQL,以最快的速度查找到表中的某一条信息。主键必须满足的条件:主键必须是惟一的,表中任意两条记录的主键字段的值不能相同;主键的值是非空值。主键可以是单一的字段,也可以是多个字段的组合。,1,单字段主键,2,多字段主键,6.1.3,设置表的外键,外键是表的一个特殊字段。如果字段,sno,是一个表,A,的属性,且依赖于表,B,的主键。那么,称表,B,为父表,表,A,为子表,,sno,为表,A,的外键。通过,sno,字段将父表,B,和子表,A,建立关联关系。设置表的外键指在创建表设置某个字段为外键。本小节主要讲解外键设置的原则、外键的作用、设置外键的方法。,设置外键的原则:必须依赖于数据库中已存在的父表的主键;外键可以为空值。,外键的作用是建立该表与其父表的关联关系。父表中删除某条信息时,子表中与之对应的信息也必须有相应的改变。例如,,stu_id,是,student,表的主键,,stu_id,是,grade,表的外键。当,stu_id,为,123,同学退学了,需要从,student,表中删除该学生的信息。那么,,grade,表中,stu_id,为,123,的所有信息也应该同时删除。,6.1.4,设置表的非空约束,非空性是指字段的值不能为空值(,NULL,)。非空约束将保证所有记录中该字段都有值。如果用户新插入的记录中,该字段为空值,则数据库系统会报错。例如,在,id,字段加上非空约束,,id,字段的值就不能为空值。如果插入记录的,id,字段的值为空,该记录将不能插入。设置表的非空约束是指在创建表时为表的某些特殊字段加上,NOT NULL,约束条件。设置非空约束的基本语法规则如下:,属性名 数据类型,NOT NULL,6.1.5,设置表的惟一性约束,惟一性是指所有记录中该字段的值不能重复出现。设置表的惟一性约束是指在创建表时为表的某些特殊字段加上,UNIQUE,约束条件。唯一性约束将保证所有记录中该字段的值不能重复出现。例如,在,id,字段加上惟一性约束,所以记录中,id,字段上不能出现相同的值。例如,在表的,id,字段加上惟一性约束,那么每条记录的,id,值都是惟一的,不能出现重复的情况。如果一条的记录的,id,为,0001,,那么该表中就不能出现另一条记录的,id,为,0001,。设置惟一性约束的基本语法规则如下:,属性名 数据类型,UNIQUE,6.1.6,设置表的属性值自动增加,AUTO_INCREMENT,是,MySQL,数据库中一个特殊的约束条件。其主要用于为表中插入的新记录自动生成惟一的,ID,。一个表只能有一个字段使用,AUTO_INCREMENT,约束,且该字段必须为主键的一部分。,AUTO_INCREMENT,约束的字段可以是任何整数类型(,TINYINT,、,SMALLINT,、,INT,、,BIGINT,等)。默认的情况下,该字段的值是从,1,开始自增。,设置属性值字段增加的基本语法规则如下:,属性名 数据类型,AUTO_INCREMENT,6.1.7,设置表的属性的默认值,在创建表时可以指定表中字段的默认值。如果插入一条新的记录时没有为这个字段赋值,那么数据库系统会自动为这个字段插入默认值。默认值是通过,DEFAULT,关键字来设置的。设置默认值的基本语法规则如下:,属性名 数据类型,DEFAULT,默认值,6.2,查看表结构,查看表结构是指查看数据库中已存在的表的定义。查看表结构的语句包括,DESCRIBE,语句和,SHOW CREATE TABLE,语句。通过这两个语句,可以查看表的字段名、字段的数据类型、完整性约束条件等。本节将详细讲解查看表结构的方法。,6.2.1,查看表基本结构语句,DESCRIBE,MySQL,中,,DESCRIBE,语句可以查看表的基本定义。其中包括,字段名、字段数据类型、是否为主键和默认值等。,DESCRIBE,语句的语法形式如下:,DESCRIBE,表名,;,6.2.2,查看表详细结构语句,SHOW CREATE TABLE,MySQL,中,,SHOW CREATE TABLE,语句可以查看表的详细定义。该语句可以查看表的字段名、字段的数据类型、完整性约束条件等信息。除此之外,还可以查看表默认的存储引擎和字符编码。,SHOW CREATE TABLE,语句的语法形式如下:,SHOW CREATE TABLE,表名,;,6.3,修改表,修改表是指修改数据库中已存在的表的定义。修改表比重新定义表简单,不需要重新加载数据,也不会影响正在进行的服务。,MySQL,中通过,ALTER TABLE,语句来修改表。修改表包括修改表名、修改字段数据类型、修改字段名、增加字段、删除字段、修改字段的排列位置、更改默认存储引擎和删除表的外键约束等。本节将详细讲解上述几种修改表的方式。,6.3.1,修改表名,表名可以在一个数据库中唯一的确定一张表。数据库系统通过表名来区分不同的表。例如,数据库,school,中有,student,表。那么,,student,表就是唯一的。在数据库,school,中不可能存在另一个名为“,student”,的表。,MySQL,中,修改表名是通过,SQL,语句,ALTER TABLE,实现的。其语法形式如下:,ALTER TABLE,旧表名,RENAME TO,新表名,;,6.3.2,修改字段的数据类型,字段的数据类型包括整数型、浮点数型、字符串型、二进制类型、日期和时间类型等。数据类型决定了数据的存储格式、约束条件和有效范围。表中的每个字段都有数据类型。有关数据类型的详细内容见第,4,章。,MySQL,中,,ALTER TABLE,语句也可以修改字段的数据类型。其基本语法如下:,ALTER TABLE,表名,MODIFY,属性名 数据类型,;,6.3.3,修改字段名,字段名可以在一张表中唯一的确定一个字段。数据库系统通过字段名来区分表中的不同字段。例如,,student,表中包含,id,字段。那么,,id,字段在,student,表中是唯一的。,student,表中不可能存在另一个名为“,id”,的字段。,MySQL,中,,ALTER TABLE,语句也可以修改表的字段名。其基本语法如下:,ALTER TABLE,表名,CHANGE,旧属性名 新属性名 新数据类型,;,其中,“旧属性名”参数指修改前的字段名;“新属性名”参数指修改后的字段名;“新数据类型”参数修改后的数据类型,如不需要修改,则将新数据类型设置成与原来一样。,1,只修改字段名,2,修改字段名和字段数据类型,6.3.4,增加字段,在创建表时,表中的字段就已经定义完成。如果要增加新的字段,可以通过,ALTER TABLE,语句进行增加。,MySQL,中,,ALTER TABLE,语句增加字段的基本语法如下:,ALTER TABLE,表名,ADD,属性名,1,数据类型,完整性约束条件,FIRST|AFTER,属性名,2;,1,增加无完整性约束条件的字段,2,增加有完整性约束条件的字段,3,表的第一个位置增加字段,4,表的指定位置之后增加字段,6.3.5,删除字段,删除字段是指删除已经定义好的表中的某个字段。在表创建好之后,如果发现某个字段需要删除。可以采用将整个表都删除,然后重新创建一张表的做法。这样做是可以达到目的,但必然会影响到表中的数据。而且,操作比较麻烦。,MySQL,中,,ALTER TABLE,语句也可以删除表中的字段。其基本语法如下:,ALTER TABLE,表名,DROP,属性名,;,6.3.6,修改字段的排列位置,创建表的时候,字段在表中的排列位置就已经确定了。如果要改变字段在表中的排列位置,则需要,ALTER TABLE,语句来处理。,MySQL,中,修改字段排列位置的,ALTER TABLE,语句的基本语法如下:,ALTER TABLE,表名,MODIFY,属性名,1,数据类型,FIRST|AFTER,属性名,2;,其中,“属性名,1”,参数指需要修改位置的字段的名称;“数据类型”参数指“属性名,1”,的数据类型;“,FIRST”,参数指定位置为表的第一个位置;“,AFTER,属性名,2”,参数指定“属性名,1”,插入在“属性名,2”,之后。,1,字段修改到第一个位置,2,字段修改到指定位置,6.3.7,更改表的存储引擎,MySQL,存储引擎是指,MySQL,数据库中表的存储类型。,MySQL,存储引擎包括,InnoDB,、,MyISAM,、,MEMORY,等。不同的表类型有着不同的优缺点,在第,5,章有详细的介绍。在创建表的时候,存储引擎就已经设定好了。如果要改变,可以通过重新创建一张表来实现。这样做是可以达到目的,但必然会影响到表中的数据。而且,操作比较麻烦。,MySQL,中,,ALTER TABLE,语句也可以更改表的存储引擎的类型。其基本语法如下:,ALTER TABLE,表名,ENGINE=,存储引擎名,;,6.3.8,删除表的外键约束,外键是一个特殊字段,其将某一表与其父表建立关联关系。在创建表的时候,外键约束就已经设定好了。由于特殊需要,与父表之间的关联关系需要去除,要求删除外键约束。,MySQL,中,,ALTER TABLE,语句也可以删除表的外键约束。其基本语法如下:,ALTER TABLE,表名,DROP FOREIGN KEY,外键别名,;,6.4,删除表,删除表是指删除数据库中已存在的表。删除表时,会删除表中的所有数据。因此,在删除表时要特别注意。,MySQL,中通过,DROP TABLE,语句来删除表。由于创建表时可能存在外键约束,一些表成为了与之关联的表的父表。要删除这些父表,情况比较复杂。本节将详细讲解删除没有被关联的普通表和被其他表关联的父表的方法。,6.4.1,删除没有被关联的普通表,MySQL,中,直接使用,DROP TABLE,语句可以删除没有被其他关联的普通表。其基本语法如下:,DROP TABLE,表名,;,其中,“表名”参数为要删除的表的名称。,【,示例,6-25】,下面将删除,example5,表,,SQL,代码如下:,DROP TABLE example5;,如果代码运行成功,将从数据库中删除,example5,表。在执行代码之前,先用,DESC,语句查看是否存在,example5,表,以便与删除后进行对比。,6.4.2,删除被其他表关联的父表,在,6.1.3,节中讲解了创建表时设置表的外键。这样就使数据库中的某些表之间建立了关联关系。一些表成为了父表,这些表被其子表关联着。要删除这些父表,情况不像上一节那么简单。,【,示例,6-26】,下面将要删除,6.1,节中创建的,example1,表。,SQL,代码如下:,DROP TABLE example1;,代码执行后,结果显示为:,mysql DROP TABLE example1;,ERROR 1217(23000):Cannot delete or update a parent row:a foreign key constraint fails,6.5,本章实例,在本小节中将在,example,数据库创建一个,student,表和一个,grade,表。,1,登录数据库系统,2,选择,example,数据库,3,创建,student,表和,grade,表,4,将,grade,表的,course,字段的数据类型改为,VARCHAR(20),5,将,s_num,字段的位置改到,course,字段的前面,6,将,grade,字段改名为,score,7,删除,grade,表的外键约束,8,将,grade,表的存储引擎更改为,MyISAM,类型,9,将,student,表的,address,字段删除,10,在,student,表中增加名为,phone,的字段,11,将,grade,表改名为,gradeInfo,12,删除,student,表,6.6,上机实践,1,操作,teacher,表,题目要求:本题将在,school,数据库创建一个,teacher,表。,2,操作,department,表和,worker,表,题目要求:本题将在,example,数据库创建一个,department,表和一个,work,表。,6.7,常见问题及解答,1,字段改名后,为什么会有部分约束条件丢失?,2,如何设置外键?,3,为什么自增字段不能设置默认值?,4,如何删除父表?,6.8,小结,本章介绍了创建表、查看表结构、修改表和删除表的方法。创建表、修改表是本章最重要的内容。创建表和修改表的内容比较多,难度也非常大。这两个部分需要不断的练习。只有通过实践练习,才会对这两部分了解得更加透彻。而且,这两部分很容易出现语法错误,必须在练习中掌握正确的语法规则。创建表和修改表后一定要查看表的结构,这样可以确认操作是否正确。本章中的完整性约束条件是难点,希望读者在以后的学习和实践中多思考,以便对完整性约束条件了解的更加透彻。删除表的时候一定要特别小心,因为删除表的同时会删除表中的所有记录。下一章将介绍索引的相关知识。,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服