分自由表和数据库表
自由表有普通索引、唯一索引、候选索引
数据库表有主索引、普通索引、唯一索引、候选索引
普通索引,就是为了排序方便设置的
唯一索引,主要是为了和之前的版本进行对接,只有特殊编程的时候能用上。
候选索引,是唯一标示数据的索引项目。
主索引,是为了创建表与表之间的连结创建的,唯一标示表内元组的。
主索引是在候选索引中挑的一个关键性的索引。特点是数据是唯一的,不能重复。
一个数据库表只能有一个主索引,其他索引都可以设置多个。
可以建立索引的;至于建立聚集索引或者是非聚集索引,那要看你这个时间字段的具体情况以及使用或变更频繁程度。一般来说,适合建立聚集索引的要求:“既不能绝大多数都相同,又不能只有极少数相同”的规则。先说说一个误区:有人认为:只要建立索引就能显著提高查询速度。这个想法是很错误的。建立非聚集索引,确实,一般情况下可以提高速度,但是一般并不会达到你想要的速度。只有在适当的列建立适当的(聚集)索引,才能达到满意的效果。下面的表总结了何时使用聚集索引或非聚集索引(很重要)。动作描述 使用聚集索引 使用非聚集索引列经常被分组排序 应应返回某范围内的数据 应 不应一个或极少不同值 不应 不应小数目的不同值 应 不应大数目的不同值 不应 应频繁更新的列 不应 应外键列 应应主键列 应应频繁修改索引列 不应 应别的就要看你的理解了。
查看表的主键信息
exec sp_pkes '表名'
查看表的索引信息
exec sp_helpindex '表名'
查看表的类型长度信息
exec sp_help '表名'
首先有一点你没有弄明白,数据库表才可以建主索引,自由表是不能建主索引的。也就是说数据库表可以建4种索引:主索引、候选索引、普通索引、唯一索引。但自由表只能建立3种索引:候选索引、普通索引、唯一索引。
如果要建主索引,可以在表设计器窗口的“索引”选项卡中建立,但index on 命令中不能建立主索引,此命令只能建候选索引、普通索引和唯一索引。
如:index on 学号 tag 学号 candidate
index on 姓名 tag 姓名 unique
index on 性别 tag 性别
(上述三个命令分别的是建立候选索引、唯一索引、普通索引)
但create table 命令中可以在指定字段属性的同时建立此字段为主索引,前提也是必须是数据库表。
举个例子:要求创建一个“学生”数据库中的“学籍”表,字段有学号,姓名,成绩,同时指定学号为主索引。
open data 学生
create table 学籍 (学号 C(6) primary key ,姓名 c(8),成绩 n(5,1))
数据库中主键是:
主键是在一个表上定义的唯一键中的一个,而且该键被选为最重要的键。一个表上只能有一个主键。
会自动为主键创建主索引。数据库管理器使用主索引来有效地访问表行,且主索引允许数据库管理器强制主键的唯一性。(也可以在非主键列上定义索引,以便在处理查询时高效率地访问数据。)
关键字就是为了方便编程人员在打开数据库的时候知道每个表所代表的值是什么。主要起到注释作用
索引可以提高查询的速度
其实主键和索引都是键,不过主键是逻辑键,索引是物理键,意思就是主键不实际存在,而索引实际存在在数据库中,主键一般都要建,主要是用来避免一张表中有相同的记录,索引一般可以不建,但如果需要对该表进行查询 *** 作,则最好建,这样可以加快检索的速度
以上就是关于在Visual Foxpro中索引有哪几种他们的区别是什么全部的内容,包括:在Visual Foxpro中索引有哪几种他们的区别是什么、数据库表如何建立索引、怎么获取数据库表的主键,索引,类型,长度信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)