创建表、索引和约束.ppt

上传人:xt****7 文档编号:5336846 上传时间:2020-01-26 格式:PPT 页数:29 大小:311.86KB
返回 下载 相关 举报
创建表、索引和约束.ppt_第1页
第1页 / 共29页
创建表、索引和约束.ppt_第2页
第2页 / 共29页
创建表、索引和约束.ppt_第3页
第3页 / 共29页
点击查看更多>>
资源描述
第3章创建表 索引和约束 熟练掌握创建 修改和删除表的方法掌握管理索引和约束的方法 一 表 表定义为列的集合 数据在表中是按行和列的组织形式排列的 每行代表唯一的一条记录 而每列代表记录中的一个域 设计表时一般应考虑 表的各列以及每一列的数据类型 列是否允许空值是否需要索引 哪些列是主键 哪些列是外键是否使用约束 默认设置或规则等 SQLServer提供一系列系统定义数据类型 也可以让用户根据需要在系统数据类型的基础上创建用户定义数据类型数据类型包括如下属性 数据类别存储数据的长度或大小数值的精度数值的小数位数 数据类型 整数数据类型货币数据类型浮点数据类型日期 时间数据类型字符数据类型二进制数据类型双字节字符数据类型自定义数据类型 SQLServer提供的主要数据类型 整数数据类型 Bit 取值范围只能为0或1 1 8个bit型数据占一个字节 9 16个bit型数据占两个字节 以此类推Bitint 可存储从 263到263 1范围的正负数 占8个字节Int 可存储从 231到231 1范围的正负数 占4个字节Smallint 可存储从 215 32768 到215 1范围的正负数 占8个字节Tinyint 可存储从0到255范围内的所有整数 占1个字节 货币数据类型 Money 由两个4字节整数构成 前面4字节表示货币值的整数部分 后面的一个4字节表示小数部分 存储范围从 263到263 1 可精确到万分之一的货币单位Smallmoney 由两个2字节构成表示范围从 231到231 1 精确到万分之一 日期 时间数据类型 Datetimesmalldatetime 字符数据类型 CharVarchartext 关键字 是用来唯一标识表中每一行的属性或属性的组合 也成为关键码 码或键候选关键字 公共关键字主关键字与外关键字主表与从表 关键字 数据的完整性就是数据的正确性和一致性域完整性 列完整性 用户定义的完整性 指表中的任一列数据必须满足所定义的数据类型 且其值必须在有效的范围之内表完整性 实体完整性 即主属性不能取空值参照完整性 引用完整性 保证相关联的表中的数据是一致的 协调的 数据的完整性 保证参照完整性的规则 对从表作INSERT操作时 要保证外键的值一定要在主表中存在UPDATE从表的外键值时 要保证修改后的外键值一定要在主表中存在UPDATE主表的主键值时 要注意从表中是否存在该主关键字 有则禁止所作的修改或级联修改所有从表中与之相应的外键值DELETE同上 创建和管理表 创建表使用企业管理器创建表使用T SQL语句创建表语法 CREATETABLEtable name Col namecolumn properties 创建和管理表 重命名表使用企业管理器创建表使用T SQL语句创建表 创建和管理表 删除表使用企业管理器创建表使用T SQL语句创建表 创建和管理表 修改表使用企业管理器创建表使用T SQL语句创建表n修改表设置主键基本语法ALTERTABLEtable nameADDCONSTRAINTconstraint namePRIMARYKEY CLUSTERED NONCLUSTERED col name n修改表删除约束基本语法ALTERTABLEtable nameDROPCONSTRAINTconstraint name 创建和管理表 修改表使用企业管理器创建表使用T SQL语句创建表n修改表设置外键基本语法ALTERTABLEtable nameADDCONSTRAINTconstraint nameFOREIGNKEY col name REFERENCEStable2 name col2 name 创建和管理表 修改表使用企业管理器创建表使用T SQL语句创建表n修改表设置检查基本语法ALTERTABLEtable nameADDCONSTRAINTconstraint nameCHECK check expr 索引基础知识 索引的用途 索引通过记录表中的关键值来指向表中的记录 这样数据库引擎就不用扫描整个表而能定位到相关的记录 索引的相关特性 复合索引 基于两列或多列而建立索引称为复合索引 唯一索引 如果表中任意两行的被索引的列不允许出现重复值 那么这种索引成为唯一索引 填充因子 填充因子是SQLServer设置每一个索引页的填充程度 索引的分类 聚集索引 聚集索引会对表和视图进行物理排序 表和视图中只能有一个聚集索引 非聚集索引 逻辑索引 非聚集索引不会对表和视图进行物理排序 在表或视图中 最多可以创建250个索引 何时使用索引 一般在那些经常被用来查询的表的列上建立索引以获取最佳性能 不要在表中建立太多且不经常使用的索引 建立和管理索引 索引可以在新建表时创建 也可以在创建表之后任何时候创建 一个表可以创建多个索引 1 使用企业管理器创建索引在Xk数据库中的Student表上创建基于StuName列 名为IX StuName的非聚集 非唯一索引 2 使用T SQL语句创建索引CREATE UNIQUE CLUSTERED NONCLUSTERED INDEXindex nameON table name view name column name n 注意事项 必须是表的所有者 才能执行CREATEINDEX语句来创建索引UNIQUE索引既可以采用聚集索引的结构 也可以采用非聚集索引的结构 如果不指明CLUSTERED选项 SQLServer将为UNIQUE索引采用默认非聚集索引的结构 建有UNIQUE索引的表在执行INSERT语句或UPDATE语句时 SQLServer将自动检验是否存在重复值 如果存在 SQLServer在第一个重复值出现处取消语句并返回错误信息 具有相同组合列 不同组合顺序的复合索引彼此是不同的 如果表中已有数据 那么在创建UNIQUE索引时 SQLServer将自动检验是否存在重复值 如果存在重复值 将不能创建UNIQUE索引 删除索引 1 使用企业管理器删除索引例1 使用企业管理器删除Student表名为IX StuName的索引 2 使用T SQL语句删除索引删除索引命令常用格式 DROPINDEXtable name index name table name index name 删除索引的注意事项 不能用DROPINDEX命令删除由PRIMARYKEY约束或UNIQUE约束创建的索引 要删除这些索引 必须先删除PRIMARYKEY约束或UNIQUE约束 在删除聚集索引时 表中的所有非聚集索引将被重建 约束 约束及其用途 约束定义了关于允许什么数据进入数据库的规则 是分配给表或表中某列的一个属性 使用约束的目的在于防止列中出现非法数据 可以自动维护数据库中数据的完整性 约束的类型 PRIMARYKEY 主键 约束FOREIGNKEY 外键 约束UNIQUE 唯一 约束CHECK 检查 约束DEFAULT 缺省 约束 约束的实现 PRIMARYKEY 主键 约束例1 使用企业管理器创建以上各表主键约束 并删除 例2 使用T SQL命令创建以上各表主键约束 并删除 FOREIGNKEY 外键 约束使用企业管理器创建以上各表外键约束 并删除UNIQUE 唯一 约束使用企业管理器创建UNIQUE约束 并删除 约束的实现 CHECK 检查约束 可以使用任何布尔表达式来创建检查约束 但约束表达式不能参照表中其它的列和其他表 视图或存储过程 可以在一个列上定义和使用多个CHECK约束 这些约束将按照创建的次序发生作用 约束表达式可以参照表中同行其他列 使用企业管理器创建CHECK约束 并删除 约束的实现 DEFAULT 缺省约束 DEFAULT约束与列相关联 它可用于除了TIMESTAMP列和IDENTITY列以外的所有数据类型列 每列只能有一个DEFAULT约束 使用企业管理器创建DAFAULT约束 并删除 使用T SQL命令创建DEFAULT约束 并删除
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!