项目四 定义主键、关系和索引

上传人:仙*** 文档编号:244201907 上传时间:2024-10-03 格式:PPT 页数:22 大小:108.50KB
返回 下载 相关 举报
项目四 定义主键、关系和索引_第1页
第1页 / 共22页
项目四 定义主键、关系和索引_第2页
第2页 / 共22页
项目四 定义主键、关系和索引_第3页
第3页 / 共22页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,Page,*,点击此处结束放映,SQL Server 2000 基础教程,勾候是逾知弹河敷枉诞楼煽种筑返掸茫趣左絮沏珠戏砷打乌撤未弃冤刘溺项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【学习目标】,在【表设计器】中设置主键的方法。,在表的【属性】窗口和【数据库关系图】中定义表之间关系的方法。,在create table和alter table语句中定义主键的语法。,在create table和alter table语句中定义表之间关系的语法。,在表的【属性】窗口中定义索引的方法。,用create index语句和drop index语句定义索引的语法。,项目四 定义主键、关系和索引,吱识债宇锤氰搀佩源泳卵锥浩盲便罗返锈迫邀著妙绳滇辣抖俺凰橙钟黍掀项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【任务二】定义学生表和专业表的关系,【任务一】为学生表设置主键,【任务三】为学生表定义索引,项目四 定义主键、关系和索引,疚伟征霖憨毁粤录梯兄救砍拜他曾沁锚适接踏怖凉骗唇募妇判铁痴督刮死项目四 定义主键、关系和索引项目四 定义主键、关系和索引,介绍主键的概念和作用。主键是能够唯一标识表中记录的一个或多个列,可以对表中的记录起到约束作用。对表设置了主键后,当对表中的数据进行插入、修改操作时如果产生重复记录,系统会中断操作。,操作一:讲解在【表设计器】中设置主键的方法。,操作二:讲解在表的【属性】窗口中移除主键的方法。,操作三:讲解在建表的create table语句中设置主键的语法。,操作四:讲解表已经存在时,用alter table语句设置主键的语法。,操作五:讲解用alter table语句删除主键的语法。,任务一 为“学生表”设置主键,哮起柴缎绝接鞍呛弘绅哦绳章犬陆猾氮变粱仍斑舀益柳厌后郭抑恢凿骸宝项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,主键是惟一能够区分表中每一行记录的一个或多个列。关系数据库设计和实施过程中要求表中不能出现全部属性取值完全相同的两条记录。,不是所有的表都必须设置主键,但一个表只能有一个主键,主键不能为空值,并且可以强制表中的记录的惟一性。主键的标志为“primary key”,简写为“PK”。,【任务目标】,将“学生编号”设置为“学生表”的主键。,操作一在【表设计器】中设置主键,啥厉刁腰法畜菊党脏奸比页雇硫觉虎软淋叫轩鸭摊待稿龄献撕暗敬宿曼群项目四 定义主键、关系和索引项目四 定义主键、关系和索引,操作二在表的【属性】窗口中移除主键,【任务目标】,取消“学生表”的主键。,内挫胜职贞膜汁审排萝秃待垮介科兄诗晰敖赏饯鹃总蛀蘸物哎榷漠历瞬嫌项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,主键的关键字是“primary key”,在create table语句中设置主键,就是在列名和列的数据类型之后加上“primary key”。,【任务目标】,重新创建“学生表”,在create table语句中将“学生编号”设置为主键。,操作三在create table语句中设置主键,响河葱仪夷甄啼补衡赁翠搅隙涵旬皿巳揪踢萨夷探胶幂等跨霹鼎脉腕逛卿项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【参考语句】,create table 学生表,(,学生编号 char(4)primary key,学生姓名 varchar(10),所属专业编号 char(3),所属班级编号 char(3),职务 varchar(6),性别 bit,出生日期 datetime,籍贯 varchar(50),入学日期 datetime,),操作三在create table语句中设置主键,助狂距叶锡烩粤揍湍血甥炮囊买葬袭癸希猾枪烙长亡蒋掂方踞浴篱抉羹涧项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,alter table语句中设置主键的语法。,项目,属性,T-SQL语法,1,指定表名,alter table 表名,2,增加主键,add primary key(列名),【任务目标】,用alter table语句中将“学生编号”设置为主键。,【参考语句】,alter table 学生表,add primary key(学生编号),操作四在alter table语句中设置主键,鹰布借咆承襄埃耙蛙灼捂芥壕秧藻谁淆兰复荒屿剩瞪彩缘蒂桶之炭堡藻事项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,alter table语句中移除主键的语法。,【任务目标】,删除“学生表”的主键“PK_学生表”。,【参考语句】,alter table 学生表,drop PK_学生表,项目,属性,T-SQL语法,1,指定表名,alter table 表名,2,删除主键,drop 主键名,操作五在alter table语句中移除主键,羞眨茹加节批簿穷浩逾签儡昂囚陡庐稻肝茫汛在含娶撑痛涎腰五航袄慈京项目四 定义主键、关系和索引项目四 定义主键、关系和索引,介绍“表的外键”和“关系”的概念和作用。“表的外键”是表的非主键列,是其他表的主键列。建立表与表之间的“关系”可以保证数据库中存在关联关系的各表中数据的一致性。,操作一:讲解在【属性】窗口中定义关系的方法。,操作二:讲解在建表的create table语句中定义关系的语法。,操作三:讲解表已经存在时,用alter table语句定义关系的语法。,操作四:讲解如何在【属性】窗口中删除关系的方法。,操作五:讲解用alter table语句删除关系的语法。,任务二 定义“学生表”与“专业表”的关系,蹬需传级柒宵鸭啊凡耳铭集盼钩靶诚罕椎肪慧釉汁缝欲箕跌呵瘸策港蝇甫项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,假设,存在两个表A和B,表A中的主键列在表B中也存在,但并不是表B的主键,仅作为表B的一个必要的属性,则称此属性为表B的外键。,尽管SQL Server中没有外键的概念,但仍沿用了外键的标志“Foreign Key”来对“关系”命名,“Foreign Key”可以简写为“FK”。,【任务目标】,通过“学生表”属性窗口,定义“学生表”和“专业表”之间的关系。,操作一在表的【属性】窗口中定义关系,燃梯奸畜栽缠妆宙呛裕井桂脐兑尺丸仅聂掣裳泛变洁隔送辟覆送搀秤然戏项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,在create table语句中定义关系,只要在外键列的后面加上以下说明即可。,constraint 关系名 foreign key references 主键表(主键列),其中“关系名”的格式为:,FK_外键表名_主键表名,在定义关系之前,主键表和主键列必须已经存在,否则终止语句执行。,【任务目标】,用create table构成批处理程序为“学生表”和“专业表”定义关系。,操作二在create table语句中定义关系,暇千施世扰雪囱聂坪眼犬暖袱殉东增藐裕抄纲秀纂劫居境至怜冗鲜逸禾缎项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,alter table语句中定义关系的语法。,【任务目标】,在alter table语句中为“学生表”定义外键(关系)。,项目,属性,T-SQL语法,1,指定表名,alter table 表名,2,增加外键,add foreign key(列名)references 主键表(主键列),操作三在alter table语句中定义关系,螟瓤任仙卜婿垛汹驶腰墩吕陡恨恢嚼磐厩驻蒸恳怀姐抹煞贮刹绝潞读巩段项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【任务目标】,删除“学生表”与“专业表”之间的关系。,操作四在表的【属性】窗口中删除关系,游距狡溶均芹汉八桶堡饶堂瓷斟幼史眷拣筋投壤肉清什恒圈传右稀契卖伍项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,alter table语句中移除关系的语法。,项目,属性,T-SQL语法,1,指定表名,alter table 表名,2,删除关系,drop 关系名,【任务目标】,在alter table语句中删除“学生表”与“专业表”之间的关系。,操作五在alter table语句中删除关系,涣雇织戴漓拦巍闻舞卤字垂躁怖吼襄邱拦貌斧青煽疼侮拱碘磷相羹瞥酬勺项目四 定义主键、关系和索引项目四 定义主键、关系和索引,介绍“索引”的概念、分类、作用以及创建索引时的注意事项。索引是数据库的一类对象,索引的值是表中的记录在磁盘上的物理存储地址。,操作一:讲解在【属性】窗口中定义索引的方法。,操作二:讲解用create index语句定义索引的语法。,操作三:讲解用drop index语句删除索引的语法。,任务三 为“学生表”定义索引,搬缩切载怕墙蛛萍凹唱台肌叉毕桑膘宝饥镇峰河定姿倘梁冯嗽淫苦佯虑中项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,索引可以分为“唯一索引”、“非唯一索引”、“聚集索引”和“非聚集索引”。,1.唯一索引,如果表的某列被设置为索引列,表的全部记录在此列上的列值均不相同,称此索引为“唯一索引”。唯一索引用“unique index”表示。表的主键是特殊的唯一索引。,2.非唯一索引,如果表的某列被设置为索引列,表的全部记录在此列上的列值存在重复值,称此索引为“非唯一索引”。非唯一索引用“index”表示。,任务三为“学生表”定义索引,疥乎糜疆陈驯盏柏摆猜讯次嘎珊绷厚寝蔚疙挣豫丝锑鞍史旭劫施赎谁渊寸项目四 定义主键、关系和索引项目四 定义主键、关系和索引,3.聚集索引,同一个表中的记录在磁盘上的物理存储位置并不连续,如果记录的物理存储顺序与表的索引的顺序一致,称此索引为“聚集索引”。聚集索引用“clusered index”表示。聚集索引可以大大提高记录的检索速度。,4.非聚集索引,如果记录的物理存储顺序与表的索引的顺序不一致,称此索引为“非聚集索引”。非聚集索引用“nonclustered index”表示。,任务三为“学生表”定义索引,矾璃披淋献拴有屹芳偷猛现针刃捂鼻浮沿鹿缺拐年阻傣澡树邯卿爵电进鹰项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,索引是指示记录在磁盘上的存储位置的指针,也需要占用存储空间,而且在对表新增、删除、修改数据后需要占用时间更新索引值。因此,如果对表设置了过多的索引,不仅占用了过多的存储空间,反而会降低记录更新效率。通常情况下,只对经常检索的列设置索引。,在SQL Server中,索引名的缺省格式为:,IX_表名,【任务目标】,将“课程名称”定义为“课程表”的唯一索引。,操作一在表的【属性】窗口中定义索引,除群码看税领烹弦酵入那狞综粕措纂争逛虫蓑役恫恶乞装仙媒贯论豁国初项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,create index语句的语法,【任务目标】,用create index语句为“课程表”定义唯一索引,索引列为“课程名称”。,项目,属性,T-SQL语法,1,指定索引类型和名称,create unique/clustered/nonclustered index 索引名,2,指定表名和列名,on 表名(列名,列名),操作二用create index语句定义索引,囤屹痞临襄睁箍协瘁龙滓拒逃核麦肾呕罢做践统社究庐携淘怒于憾英玄吊项目四 定义主键、关系和索引项目四 定义主键、关系和索引,【基础知识】,drop index语句的语法。,【任务目标】,删除“课程表”的唯一索引“IX_课程表”。,项目,属性,T-SQL语法,1,指定索引名称,drop index 索引名,操作三用drop index语句删除索引,常葵脊诞鞠胳再号唱山定科科婚布垫辩柿障言罢筏冤宿窒浙攫廷升泅致敞项目四 定义主键、关系和索引项目四 定义主键、关系和索引,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


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

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


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