关于VFP中索引的问题

geyufly 2004-01-25 11:21:41
各位前辈,我看vfp中索引那部分时老师觉得不怎么明白,不知道可否给小弟讲一下:)
谢了。
...全文
274 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lhm800117 2004-04-22
  • 打赏
  • 举报
回复
vfp支持四种索引:
1 :主索引:只能创建于数据库表中,不允许有重复值。
2. 侯选索引:可以在数据库表中创建,也可以在自由表中创建,不允许有重复值,可创建多个侯选索引。
3.唯一索引:可以在数据库表中创建,也可以在自由表中创建,允许有重复值
4.普通索引:可以在数据库表中创建,也可以在自由表中创建,允许有重复值,可创建多个普通索引,在一对多关系的多方,可使用他 。
由于这内容比较多,但还不是很难,建议你多看看书,多理解一下,应该没问题。祝你好运!

cowley 2004-01-30
  • 打赏
  • 举报
回复
具体呀!
这部分并不是很难!
现在你只有好好看书了!!
dfwxj 2004-01-29
  • 打赏
  • 举报
回复
两个字:看书!
ZhuJiaWei 2004-01-28
  • 打赏
  • 举报
回复
索引简单讲就是一个可以标识记录的字段或字段的组合。
sunsunup 2004-01-27
  • 打赏
  • 举报
回复
想解決什么問題, 具體點吧
myfoxprox 2004-01-27
  • 打赏
  • 举报
回复
这个问题说简单是简单,说复杂也不复杂(书都有说),这样回到命令方式说明一下:
INDEX ON KEY1 TO INDEXNAME &&建立一个普通索引(.IDX)
INDEX ON KEY1 TAG KEY1 &&这样建立一个复合索引(.CDX)
现在都用CDX了,速度比较快.
老实说,你的问题不好回答,书中都有,问点实用的吧!


geyufly 2004-01-26
  • 打赏
  • 举报
回复
也是啊,我是想请大家帮忙归纳下什么主索引,候选索引,普通索引,唯一索引和什么结构索引还有主控索引以及它们怎么建立和使用,还有在哪些时候该使用索引谢谢了,实在是看不懂啊,帮帮我了只有靠大家:)
xymsgw 2004-01-26
  • 打赏
  • 举报
回复
索引的问题大了,具体点吧,如果全不懂那还是看书去吧?
ljleager 2004-01-26
  • 打赏
  • 举报
回复
你问的问题太大了,不具体,不好回答。最好问具体的实例!!
VFP实现选择排序 时间:2009-06-07来源:编程入门网 作者:老马   众所周知在常用的简单排序方法,前文所介绍的起泡排序(冒泡排序)是效率最差的一个了。我们今天所介绍的这个选择排序也是简单排序的一种,不过比起泡排序的效率要高,并且也比较容易实现。   这些常用的排序方法多见诸于C/C++方面的资料,如果要在vfp实现这些排序方法,原理是一样的,只是在代码实现上略有差别。例如,在C/C++数组的下标是从0开始,而vfp数组的下标是从1开始;C/C++的for语句可以采用for(i=0;ivfp的for语句则有些弱,它的变量终值不能采取iVFP书写代码时要特别注意数组下标问题及循环变量的初值及终值,在以后的文章不会再特别提及这些问题。   我们先看一下选择排序的基本思想和排序过程。(此部分内容引用自百度百科:http://baike.baidu.com/view/547263.htm)   基本思想   每一趟从待排序的数据元素选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。   选择排序是不稳定的排序方法。n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果:    ①初始状态:无序区为R[1..n],有序区为空。    ②第1趟排序   在无序区R[1..n]选出关键字最小的记录R[k],将它与无序区的第1个记录R[1]交换,使R[1..1]和R[2..n]分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。   ……    ③第i趟排序   第i趟排序开始时,当前有序区和无序区分别为R[1..i-1]和R(1≤i≤n-1)。该趟排序从当前无序区选出关键字最小的记录 R[k],将它与无序区的第1个记录R交换,使R[1..i]和R分别变为记录个数增加1个的新有序区和记录个数减少1个的新无序区。   这样,n个记录的文件的直接选择排序可经过n-1趟直接选择排序得到有序结果。   排序过程   【示例】:    初始关键字 [49 38 65 97 76 13 27 49]   第一趟排序后 13 [38 65 97 76 49 27 49]   第二趟排序后 13 27 [65 97 76 49 38 49]   第三趟排序后 13 27 38 [97 76 49 65 49]   第四趟排序后 13 27 38 49 [49 97 65 76]   第五趟排序后 13 27 38 49 49 [97 65 76]   第六趟排序后 13 27 38 49 49 65 [97 76]   第七趟排序后 13 27 38 49 49 76 [97 76]   最后排序结果 13 27 38 49 49 76 76 97   知道这个排序方法的基本思想和排序过程,在vfp书写代码就简单了,只是需要注意vfp数组的下标及循环变量的初值及终值与C/C++的区别。实例的运行界面如下图:   本例依然采取生成10个随机整数的方式取得数据,然后用选择法对这10个整数进行从小到大的排序。实现过程:   一、新建表单,向表单添加一个编辑框控件及三个命令按钮,按上图设置这三个命令按钮的caption属性。   二、添加代码:   1.“生成10个随机整数”按钮的click事件: public s(10) for i=1 to 10 s(i)=int(rand()*100) &&产生两位数的随机整数 thisform.edit1.value=thisform.edit1.value+str(s(i),5) endfor   2.“清屏”按钮的click事件:thisform.edit1.value=""   3.“选择排序”按钮的click事件: local i,j,k,t as integer for i=1 to 9 k=i for j=i+1 to 10 if s(j)

2,748

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧