1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 数据库基本操作(创建主键 外键以及索引)

数据库基本操作(创建主键 外键以及索引)

时间:2019-12-04 01:08:46

相关推荐

数据库基本操作(创建主键 外键以及索引)

​ 图书馆学习没有多大干劲了,数据库又快考试了根据考试内容写总结。老师回放已过期不得不自己来尝试 心酸!

需要按照要求给表创建主键、创建索引,创建外键(并设置删除和更新规则)

一、创建主键

​ 自己创建一个数据库和最少两个表(student表 和 course 表),然后上图:点击创建主键

二、创建外键

1、什么是外键:(这是百度说的,不是我说的)如果公共关键字在一个关系中是主关键字,那么这个公共关键字被称为另一个关系的外键。由此可见,外键表示了两个关系之间的相关联系。以另一个关系的外键作主关键字的表被称为主表,具有此外键的表被称为主表的从表。外键又称作外关键字。

最后总结一下用人的话说:就是有两个表A和表B A和B同时有属性x,但是在A中X只是一个普普通通的键没啥大的作用,却在B中担当主键的位置。所以B就是主表,A就是从表,x就是A中的外键。所以A就是参照表,B就是被参照表。

我希望创建的外键在student表中,也就是说:course作为被参照表(主表)student表作为参照表(从表)。

表格信息:

2、创建外间的步骤:

1、在student表中创建关系

弹出关系窗口,点击添加,点击 表和列的规范 一项,设置主表和从表的关系。(这里student表的scname参照course表中的cno)

2、设置insert和update规范

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eh1CsODt-1622373901735)(C:\Users\赵轶楠\AppData\Roaming\Typora\typora-user-images\image-0530185111634.png)]

默认的不执行任何操作。如果是“不执行任何操作”,当我们删除或更新主键表的数据时,会告诉用户不能执行删除或更新该操作。

“级联”的意思是当我们删除或更新主键表的数据时,会删除或更新外键表中所涉及的相关数据的所有行。

“设置Null”的意思是当我们删除或更新主键表的数据时,外键表中的外键列的值会设为Null,但前提是该列允许为空。

“设置默认值”的意思是如果我们将外键列定义了默认值,当我们删除或更新主键表的数据时,外键表中的外键列的值设为定义的默认值。

使用代码创建外键(在创建表格时加上"foreign key() references table_name() "即可,先创建主表再创建从表)

create table coursecno nchar(10) primary key,cname nchar(10) not null,tname nchar(10);create table studentsno nchar(10) primary key,sname nchar(10) not null,ssex nchar(10),scname nchar(10) foreign key(scname) references course(cno);

三、创建索引

1、什么是索引:索引就像一个标签,创建索引之后便可以加快查询的速度

2、创建索引的步骤:

点击表在索引处右击创建索引 点击添加,至少选择一个作为索引点击确定,及创建完毕

出现第二个图标即是成功

3、用代码创建索引(CREATE[ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX索引名

ON {表名|视图名} (列名[ ASC | DESC ] [ ,…n ] ))

create index_nameon course(cno)

动作描述 使用聚集索引 使用非聚集索引

外键列 应 应

主键列 应 应

列经常被分组排序(order by) 应 应

返回某范围内的数据 应 不应

小数目的不同值 应 不应

大数目的不同值 不应 应

频繁更新的列 不应 应

频繁修改索引列 不应 应

一个或极少不同值 不应 不应

聚集索引:

聚集索引的叶节点就是实际的数据页聚集索引中的排序顺序仅仅表示数据页链在逻辑上是有序的。而不是按照顺序物理的存储在磁盘上行的物理位置和行在索引中的位置是相同的每个表只能有一个聚集索引聚集索引的平均大小大约为表大小的5%左右

非聚集索引:

非聚集索引的页,不是数据,而是指向数据页的页。若未指定索引类型,则默认为非聚集索引。叶节点页的次序和表的物理存储次序不同每个表最多可以有249个非聚集索引在非聚集索引创建之前创建聚集索引(否则会引发索引重建)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。