《(1)--3.4数据库设计与应用.ppt》由会员分享,可在线阅读,更多相关《(1)--3.4数据库设计与应用.ppt(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库设计与应用数据库设计与应用数据表操作扎实基本功之修改表MySQL数据库设计与应用修改字段相关信息修改约束条件修改表的其他选项修改表主要包括以下几个方面:修改表主要包括以下几个方面:ALTER TABLE 表名表名 alter_spec,alter_spec.;alter_spec定义要修改的内容,其常见语法片段如下:ADD COLUMN col_name column_definition FIRST|AFTER col_name -添加新字段添加新字段|ADD CONSTRAINT symbol PRIMARY KEY(index_col_name,.)-添加主添加主键键|ADD CO
2、NSTRAINT symbolUNIQUE(index_col_name,.)-添加唯一索引添加唯一索引|ADD CONSTRAINT symbol FOREIGN KEY(index_col_name,.)reference(index_col_name,.)-添加外键添加外键|ALTER COLUMN col_name SET DEFAULT literal|DROP DEFAULT -修改默认值修改默认值|CHANGE COLUMN old_col_name new_col_name column_definition -修改修改字段名及数据类型字段名及数据类型|MODIFY COLUM
3、N col_name column_definition -修改字段类型修改字段类型|DROP COLUMN col_name -删除删除字段字段|DROP PRIMARY KEY -删除主删除主键键|DROP INDEX index_name -删除索引名称删除索引名称|DROP FOREIGN KEY fk_symbol -删除外键删除外键|table_options -更改表的其它选项更改表的其它选项ALTER TABLEALTER TABLE语句允许语句允许对表进行多个修改操作对表进行多个修改操作,其子句间用逗号分隔。,其子句间用逗号分隔。修改表结构修改表结构之之AlterTABLEA
4、lterTABLE语句语句u向表添加新字段的语法格式如下:Altertable表名add新字段名数据类型first|after旧字段名u删除字段的语法格式如下:altertable表名drop字段名修改修改字段相关信息字段相关信息-添加添加/删除字段删除字段u修改表的字段名及数据类型的语法格式如下:altertable表名change旧字段名新字段名数据类型u只修改表字段数据类型的语法格式如下:altertable表名modify旧字段名新数据类型修改修改字段相关信息字段相关信息-修改字段名修改字段名/数据类型数据类型设置自增型字段设置自增型字段默认情况下,MySQL自增型字段的值从1开始递增
5、,且步长为1。设置自增型字段的语法片段如下:字段名数据类型auto_increment自增型字段的数据类型必须为整形,建议将自增型字段设置为主键。自增型字段的数据类型必须为整形,建议将自增型字段设置为主键。实体完整性:通过主键约束和唯一性约束实现参照完整性:通过外键约束实现用户自定义的完整性:通过非空约束、默认值约束和检查约束实现添加主键、外键、唯一性约束条件的语法格式:ALTERTABLE表名ADDCONSTRAINT约束名约束类型(字段名)数据完整性包括修改约束条件修改约束条件-添加或删除主键约束主键约束(primarykey):确保表中每一行记录是唯一的,一个表只能有一个主键,主键的值不
6、能重复而且不能为空(null)。u向表添加主键的语法格式:altertable表名addprimarykeyprimarykey(字段名);u删除主键约束的语法格式:altertable表名dropPRIMARYKEY外键约束(foreignKEY):用于保证外键字段值与父表中主键字段值的一致性,外键字段值要么是NULL,要么是父表中主键字段值的复制。u添加外键的语法格式:ALTERTABLE表名ADDCONSTRAINT外键名foreignKEY(外键字段)references关联表名(关联字段)ondelete级联选项onupdate级联选项;u删除外键的语法格式:altertable表名
7、dropforeignKey约束名修改约束条件修改约束条件-添加或删除外键约束参数名称功能描述cascade父表记录的删除(delete)或修改(update)操作,会自动删除或修改子表中与之对应的记录setnull父表记录的删除(delete)或修改(update)操作,会将子表中与之对应记录的外键自动设置为null值noaction 父表记录的删除(delete)或修改(update)操作,如果子表存在与之对应的记录,那么删除或修改操作将失败restrict与noaction功能相同,是默认设置,也是最安全的设置外键约束级联选项参数说明唯一性约束(unique):用于保证表中某个字段的值不
8、重复且值能为空(null),一个表可以定义多个唯一性约束。u添加唯一性约束的语法格式:altertable表名addconstraint约束名uniqueunique(字段名);u删除唯一性约束的语法格式:altertable表名dropindex唯一索引名;修改约束条件修改约束条件-添加或删除唯一性约束非空约束(notnull):用于保证表中某个字段的值不能取null值。u添加非空约束的语法格式:altertable表名modify字段名数据类型notnull;u取消非空约束:altertable表名modify字段名数据类型null;修改约束条件修改约束条件-添加或删除非空约束默认值约束(
9、default):用于指定一个字段的默认值。插入记录时,如果没有给该字段赋值,数据库系统会自动为这个字段插入默认值。u添加默认值约束:altertable表名alter字段名setdefault默认值;u删除默认值约束:altertable表名alter字段名dropdefault;修改约束条件修改约束条件-添加或删除默认值约束修改表的其它选项修改表的其它选项altertable表名engine=新的存储引擎类型altertable表名defaultcharset=新的字符集altertable表名auto_increment=新的初始值altertable表名pack_keys=新的压缩类型 本节介绍了修改数据表结构和数据完整性的含义及实现方法。数据完整性通过主键约束、外键约束和用户自定义约束来实现,保证了数据库中的数据不受非法数据的影响,保证了数据的一致性。思考:MySQL中检查约束的含义及实现方法。总结与思考总结与思考