急!!!!VFP中索引问题????
问题如下:小弟这段时间在学VFP总是遇到索引不唯一的问题1、我建了一个数据库,里有两个表,分别是A表和B表2、A表中字段“编号”建立一个主索引,B表中“编号”和“出版社”...
问题如下:
小弟这段时间在学VFP总是遇到索引不唯一的问题
1、我建了一个数据库,里有两个表,分别是A表和B表
2、A表中字段“编号”建立一个主索引,B表中“编号”和“出版社”建立一 个普通索引
3、A表和B表按“编号”建立关联
3、以表A为数据环境编写一个录入信息的表单,运行表单录入新信息时总是出行“索引 编号”不唯一
网上大家都说“表中该字段的值有重复的”我真想不明白到底那重复了,我A表和B都只有一个编号啊!!
4、按上面步骤建立一个自由的表单运行时,则不会出现那种情况
有高手能好好给我说下吗?谢谢了!!!!
搞定后我加100分
“录入”按钮的代码如下:
sele 人员信息
use c:\ryxx\人员信息
append blank
go bottom
thisform.refresh
thisform.读者编号1.enabled=.t.
thisform.读者姓名1.enabled=.t.
thisform.性别1.enabled=.t.
thisform.职称1.enabled=.t.
thisform.联系电话1.enabled=.t.
thisform.是否借外文书1.enabled=.t.
thisform.备注1.enabled=.t.
我这都完全照搬书上的做的,高人帮帮看看,说细点~~~~~ 展开
小弟这段时间在学VFP总是遇到索引不唯一的问题
1、我建了一个数据库,里有两个表,分别是A表和B表
2、A表中字段“编号”建立一个主索引,B表中“编号”和“出版社”建立一 个普通索引
3、A表和B表按“编号”建立关联
3、以表A为数据环境编写一个录入信息的表单,运行表单录入新信息时总是出行“索引 编号”不唯一
网上大家都说“表中该字段的值有重复的”我真想不明白到底那重复了,我A表和B都只有一个编号啊!!
4、按上面步骤建立一个自由的表单运行时,则不会出现那种情况
有高手能好好给我说下吗?谢谢了!!!!
搞定后我加100分
“录入”按钮的代码如下:
sele 人员信息
use c:\ryxx\人员信息
append blank
go bottom
thisform.refresh
thisform.读者编号1.enabled=.t.
thisform.读者姓名1.enabled=.t.
thisform.性别1.enabled=.t.
thisform.职称1.enabled=.t.
thisform.联系电话1.enabled=.t.
thisform.是否借外文书1.enabled=.t.
thisform.备注1.enabled=.t.
我这都完全照搬书上的做的,高人帮帮看看,说细点~~~~~ 展开
5个回答
展开全部
问题可能出现在append blank上,如果你多按了一次该按钮,就会出现两个空记录,编号重复。或者A表已经有了一条空记录,运行时又加了一条空记录,出现编号重复。另外go bottom是多余的,当前记录就是空记录,如果索引打开了,go bottom就不指向空记录了(空记录是第一条记录)。
解决的方法:最好不用append blank,因为如果你放弃操作不保存,空记录依然存在;如果你一定要用append blank,那么,在后面要加一条:this.enabled=.f.,防止重复按该按钮,如果放弃操作,还要:
sele 人员信息
delete for empty(编号)
pack
解决的方法:最好不用append blank,因为如果你放弃操作不保存,空记录依然存在;如果你一定要用append blank,那么,在后面要加一条:this.enabled=.f.,防止重复按该按钮,如果放弃操作,还要:
sele 人员信息
delete for empty(编号)
pack
展开全部
如果只是应付考试那么我觉得按下面做就可以:
1、建立表
2、利用向导建立表单
3、将表单中除标签以外的所有控件的ControlSource属性改为“无”
4、录入按钮的代码职下:
appe blank
repl 字段名 with allt(thisfrom.对应按钮名称.value)(有多少个字段重复就行了)
thisform.按钮名称.value=(按属性里value的值填)
如果行找我:470913857
1、建立表
2、利用向导建立表单
3、将表单中除标签以外的所有控件的ControlSource属性改为“无”
4、录入按钮的代码职下:
appe blank
repl 字段名 with allt(thisfrom.对应按钮名称.value)(有多少个字段重复就行了)
thisform.按钮名称.value=(按属性里value的值填)
如果行找我:470913857
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
meiquoan 说的空记录造成的,我也认为是这样
!
!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
最开始编程时,应先说明select a ,如不说即会出现这种情况了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是我水平差还是你描述的模糊....有点乱.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询