我是这样做的:首先主从表关系已设好。1、打开主从表
2、主表增加记录,用Append,并post,可以做
3、从表增加记录,用Append,这里出错,提示意思‘ID不能被修改’。
4、关闭主从表。注:主从表都有主键ID.
2、主表增加记录,用Append,并post,可以做
3、从表增加记录,用Append,这里出错,提示意思‘ID不能被修改’。
4、关闭主从表。注:主从表都有主键ID.
解决方案 »
- delphi listbox 一行处理完再根据随机时间处理下一行
- 电脑上接了鼠标1和鼠标2,能否让鼠标2的中键模拟鼠标1的左键功能?
- 用adoquery插入数据库,出现错误
- 我下载了个程序,需要winskinform单元,是什么控件呢?我安装了vclskinform的
- 新年了,给大家散点分吧,分帖四
- 公司征名!!!
- ☆☆ 庆祝红星☆☆ ,给csdn上的朋友散分.散分贴
- 在新建的UNIT2中定义的函数怎么才能被UNIT1调用及IMAGE的问题?
- 很久没来,发现CSDN上的提问比以前要高深了一些!给分祝贺
- NetMessageBufferSend 这个API在DELPHI的那个单元中有定义,如果没有,请写出DELPHI的API定义原型,如果有个使用例子就更好了!!急用!知道的请进!(70分)
- 请问delphi中如何才能获得窗体的坐标??
- 我的窗体怎么不能拖动了?
从表ID是自增字段,我这想保留,在OFFICE access从表ID是自增字段也可以
用呀。
应该不会出错吧
在你post或者是再次append时才出错
要不你保存从表的数据时不要给id字段赋值
这种错误的关联可能出现在两个地方。一是在程序中的错误关联,二是在数据库中错误的关联。
都检查一下,试试看
另:
我如果改用别的方法做,1、打开主表
2、增加记录,并post,并记录主表ID值
3、关闭主表
4、打开从表
5、增加记录,主表ID值付给与从表关联的ID_2,从表post
3、关闭从表在WinXP下从表可增加,但Win98下却提示"主表没有相关
记录"。这是为何,是否ADOQuery控件有BUG.
主表SQL语句为:SELECT * FROM MasterTable
从表SQL语句为:SELECT * FROM DetailTable WHERE ID=:ID
主从表之间不再设其它关联。
在主表的AfterScroll事件中写:
adqDetail.Parameters[0].Value :=
adqMaster.FieldByName(adqDetail.Parameters[0].Name).Value;
if adqDetail.Active then
adqDetail.Requery;
在从表的NewRecord事件中写:
DataSet.FieldByName(adqDetail.Parameters[0].Name).Value :=
adqDetail.Parameters[0].Value;
如果这样做,还会有相同的问题出现,那么问题肯定是出在数据库上!
post
语句试试
谁有这方面的例子程序,麻烦给发一个。例子一看就可以了。十分感谢!!!Email:[email protected]
多谢各位。
主表可以用自增ID没错,但从表与主表的关联自段绝对不能用自增ID的,这才是问题所在吧。
从表的自增ID可以保留,但是你还要增加一个与主表ID关联的字段,这个自段应该是整形,而不是自增ID类型。