教我如何在delphi4中索引

ahu 2000-01-18 04:57:00

我刚刚接触delphi4.0,现有一问题求教:
我用delphi4.0内置的database desktop工具建了一个paradox表,并在建表时对字段callno建了副索引,但在程序中调用setrange方法时,总是提示index out of date,不知如何解决;若用callno作为key,则不会出错,但新增数据时,不能再增加取值相同的callno,否则出现key violation错误。


万分感谢!
ahu
2000.1.18
...全文
126 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
kxy 2000-01-19
  • 打赏
  • 举报
回复
1)Pardox中如果表没有定义Key,副索引是不能用的,会Index of date
2)callno既然是key,key的意思是在表中callNo的值只能唯一.自然不能有
相同的值.key violation错误。就是指这个.
3)callno既然可以有相同的值,是不能作为key的.在你的表中找一个
肯定值不同的字段作为key.也可以多个字段一起作为key
key的字段在表中要放在前面.
如果你不想这样,还可以在表中加一个+类型的字段.(自动增量类型)
作为key就可,+类型的字段是只读的,不用自己赋值,
表中新增数据,Pardox会自动给他赋值.



渤海海峡 2000-01-18
  • 打赏
  • 举报
回复
先为pardox建一个索引文件,然后在table.indexfiles中加入,最后设table.indexfieldNames为callno.
渤海海峡 2000-01-18
  • 打赏
  • 举报
回复
table.indexfieldNames 设了吗?

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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