visual foxpro中若建立索引的字段值不允许重复,并且一个表中只能创建一个,是什么索引?
主索引。
Visual FoxPro中,索引分为主索引、候选索引、唯一索引和普通索引。
1、索引
Visual FoxPro索引是由指针构成的文件,这些指针逻辑上按.照索引关键字值进行排序。索引文件和表文件分别存储,不改变表中记录的物理顺序。实际上创建索引是创建一个由指向.dbf文件记录的指针构成的文件。若要根据特定顺序处理表记录,可以选择一个相应的索引。
比如在学生情况表中通常将学号、姓名等作为候选索引(注意,当表中有不同记录的姓名字段取值相同时,姓名也就不能作为候选索引,因为候选字段在不同记录不允许出现重复值);
在某个时刻候选索引可以有多个,但主索引只能有一个,可以从候选索引中选取一个作为主索引,通常将学号作为主索引;而唯一索引是指表中该索引字段值相同的记录只取一个进入索引表,比如看学生情况表中有多少个班级,即可根据班级建立唯一索引;而普通索引允许字段出现重复值。
2、Visual FoxPro基础
(1)元组:在一个二维表(一个具体关系)中,水平方向的行称为元组,每一行是一个元组。元组对应存储文件中的一个具体记录。
(2)属性:二维表中垂直方向的列称为属性,每一列有一个属性名,与前面讲的实体属性相同,在Visual FoxPro中表示为字段名。每个字段的数据类型、宽度等在创建表的结构时规定。
(3)域:属性的取值范围,即不同元组对同一个属性的取值所限定的范围。
(4)关键字:属性或属性的组合,其值能够惟一地标识一个元组。
(5)外部关键字:如果表中的一个字段不是本表的主关键字或候选字,而是另外一个表的主关键字或候选关键字,这个字段(属性)就称为外部关键字。