起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 263|回复: 14

【搞定】一个表键了两个数据集存在的问题**

[复制链接]
发表于 2007-7-27 10:23:50 | 显示全部楼层 |阅读模式
我有一个(注意是一个表)数据库表,取了不同的字段建了两个(注意是2个数据集)数据集,一个是状态数据集,一个是属性数据集,
我在状态数据集中添加了“检验编号”,在属性数据集中也添加了“检验编号”,并使用“检验编号”将状态数据集设了主表,属性数据集
设了从表,建立了主外键关系。

目的:保存时我想在这个表中保存两条记录,一条是状态的,一条是属性的。

结果是:保存成功,数据库里能够正确显示两条纪录。但是关闭维护页面重新运行,页面只能显示状态数据集的信息,不能显示属性数据集的
信息。

请问什么愿意?怎么解决?
回复

使用道具 举报

 楼主| 发表于 2007-7-27 10:32:39 | 显示全部楼层
维护页面重新运行后的数据显示情况。
属性数据我也录入了,但是保存后,重新运行却没有属性信息。

T.jpg

1.28 MB, 下载次数: 135

回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-27 10:34:54 | 显示全部楼层

复选框里对应的是数据库里的字段

复选框里对应的是数据库里的字段
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-27 10:36:09 | 显示全部楼层

复选框是用表格组合的

复选框是用表格组合的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-27 10:41:22 | 显示全部楼层
数据库的保存情况截图

y.jpg

248.96 KB, 下载次数: 145

回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-27 10:46:40 | 显示全部楼层

解释

类型标志:1代表状态,2代表属性。
船检登记号和检验编号要求必须相同。

代码:
{当状态数据集插入后}
procedure TCBZTHGSLBBGBFORM.dsb_stateAfterInsert(DataSet: TDataSet);
begin

dsb_state.DataSet.FieldByName('dsdc_flag').AsString:='1';

end;


{当属性数据集插入后}
procedure TCBZTHGSLBBGBFORM.dsb_typeAfterInsert(DataSet: TDataSet);
begin
dsb_type.DataSet.FieldByName('dsdc_flag').AsString:='2';
dsb_type.DataSet.FieldByName('dsdc_ccsno').AsString:=dsb_state.DataSet.FieldByName('dsdc_ccsno').AsString;
dsb_type.DataSet.FieldByName('dsdc_offno').AsString:=dsb_state.DataSet.FieldByName('dsdc_offno').AsString;
end;
回复 支持 反对

使用道具 举报

发表于 2007-7-27 11:40:55 | 显示全部楼层
楼主,看你描述,似乎是从表没有数据或者是没有关联到主表。

你检查一下,重新运行功能后,从表的状态,数据。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-27 12:36:27 | 显示全部楼层

.

从表里有数据,就是从新运行后,页面不能显示,上面已经说的很清楚了。
回复 支持 反对

使用道具 举报

发表于 2007-7-27 13:57:31 | 显示全部楼层
是从数据集
回复 支持 反对

使用道具 举报

发表于 2007-7-27 14:00:55 | 显示全部楼层
楼主,你可以用两个DataGrid分别来显示 主数据集(状态数据集) 和 从数据集(属性数据集),
这样就能看到是啥问题了,应是数据没有对应好。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-5 20:24 , Processed in 0.037783 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表