我建了两个表,其中有3个字段列是相同。创建的数据窗口只与一个表关联,我更新数据窗口的时候,就只能更新一个表。怎样让另一个表的相同字段也更新啊?
在Pb编程中,存在触发器之说吗?
------解决方案--------------------
需要在后台写触发器来实现,不是在PB中写
------解决方案--------------------
用2个DW,分部取2个表中的要更新的数据,DW_1,DW_2,如DW_1修改了你说的3个字段后,在保存时,
获取dw_1中对应3个字段的值,更新dw_2表中的对应的3个字段赋值并保存。2个dw的更新用一个事务提交。
------解决方案--------------------
大概就是下边这个意思。
string ls_col1,ls_col2,ls_col3
if dw_1.update(true,true) = 1 then
ls_col1 = dw_1.object.col1[row1] //row1 = 你要获取那行
ls_col3 = dw_1.object.col2[row1] //row1 = 你要获取那行
ls_col3 = dw_1.object.col3[row1] //row1 = 你要获取那行
dw_2.object.col1[row2] = ls_col1 //row2 = 你要更新另外一个表的记录的行
dw_2.object.col2[row2] = ls_col2 //row2 = 你要更新另外一个表的记录的行
dw_2.object.col3[row2] = ls_col3 //row2 = 你要更新另外一个表的记录的行
if dw_2.update(true,true) = 1 then
commit using sqlca;
else
roallback using sqlca;
end if
end if
------解决方案--------------------
oracle 的话两个表主键关联建视图,操作视图就行;PB自带的SQL Anywhere木有试过。。
