ODAC应用技巧(三)主/明细表
2010-06-25 16:11:02 来源:WEB开发网两个表之间的主/明细表关系应用非常广泛。因此为数据库应用程序开发人员提供简单的方法来实现它是非常重要的。让我们看看如何实现这项功能。
假如我们在 "Department" 和 "Employee" 之间建立了主/明细表关系。"Department" 表包含以下字段: DepNo, DepName 和 Location。DepNo 是一个数字型的主键,其它两个字段是字符串类型。
"Employee" 表包含以下字段: EmpNo, EmpName, Job, Manager 和 DepNo。 EmpNo 和 DepNo 是数字型字段, EmpName 和 Job 是字符串型字段。EmpNo 是一个主键且 DepNo 是一个绑定 "Employee" 和 "Department" 的外键。
这是显示和编辑数据表所必需的。
ODAC 提供了两种绑定数据表的方法。第一个代码例子显示了通过参数绑定两个 TOraDataSet 组件 (TOraQuery, TSmartQuery, TOraTable 或 TOraStoredProc) 到主/明细关系中。
procedure TForm1.Form1Create(Sender: TObject);
var
Master, Detail: TOraQuery;
MasterSource: TDataSource;
begin
// 创建主数据集
Master := TOraQuery.Create(Self);
Master.SQL.Text := 'SELECT * FROM Department';
// 创建明细数据集
Detail := TOraQuery.Create(Self);
Detail.SQL.Text := 'SELECT * FROM Employee WHERE DepNo = :DepNo';
// 主表通过 TDataSource 组件来连接明细表
MasterSource := TDataSource.Create(Self);
MasterSource.DataSet := Master;
Detail.MasterSource := MasterSource;
// 打开主数据集和明细数据集
Master.Open;
Detail.Open;
end;
赞助商链接