从视图中更新原始 table 中的数据
Update data in original table from view
我有一个 table,其中只有一列需要更新,它只是一个要更新的标志。
但我还必须显示其他 table 的详细信息,那只是为了显示。
Table1:
emp_id
emp_name....
emp_status (will be updated via tabular forms)
Table2:
emp_bank_id
emp_bank_account
....
记录应以报告格式显示,并将 emp_status 值更新为“1”(之前为 0),用户已勾选复选框,因此将更新多条记录
我可以创建一个视图,然后选择使用表格形式仅更新此列吗?
您可以在没有视图的情况下使用 2 个 table 创建表格表格,只要其中一个 table 正在更新。
只需创建您的表格表单,选择您需要更新的 table,然后更改查询以包含其他 table 中的列,并更改包含的 table 中的所有列] 到 纯文本。
如果您更喜欢使用视图,您应该创建一个 而不是触发器 ,如下所示:
CREATE OR REPLACE TRIGGER iof_MY_TRIGGER
INSTEAD OF UPDATE
ON v_tbls
FOR EACH ROW
BEGIN
UPDATE table1
SET emp_status = :NEW.EMP_STATUS
WHERE emp_id = :NEW.EMP_ID;
END iof_MY_TRIGGER;
/
要在您的表格表单中包含一个复选框,请将您的表格表单更改为如下内容:
SELECT emp_id
, emp_name
, apex_item.checkbox2(5, emp_status, DECODE(emp_status, 1,'CHECKED',0))
FROM table1
您可以在 here
中阅读更多相关信息
对我有用的解决方案是,将字段设置为 editable
,其余部分在报告中显示为纯文本。
双击要编辑的表格报告区域下的列,将字段类型设置为Simple Checkbox
for title Display as
under the section Column Attributes
现在,在 List of Values
下的同一页面上,输入 1,0
1=> 已检查
0=> 未选中
这就是一个需要。
我有一个 table,其中只有一列需要更新,它只是一个要更新的标志。
但我还必须显示其他 table 的详细信息,那只是为了显示。
Table1:
emp_id
emp_name....
emp_status (will be updated via tabular forms)
Table2:
emp_bank_id
emp_bank_account
....
记录应以报告格式显示,并将 emp_status 值更新为“1”(之前为 0),用户已勾选复选框,因此将更新多条记录
我可以创建一个视图,然后选择使用表格形式仅更新此列吗?
您可以在没有视图的情况下使用 2 个 table 创建表格表格,只要其中一个 table 正在更新。
只需创建您的表格表单,选择您需要更新的 table,然后更改查询以包含其他 table 中的列,并更改包含的 table 中的所有列] 到 纯文本。
如果您更喜欢使用视图,您应该创建一个 而不是触发器 ,如下所示:
CREATE OR REPLACE TRIGGER iof_MY_TRIGGER
INSTEAD OF UPDATE
ON v_tbls
FOR EACH ROW
BEGIN
UPDATE table1
SET emp_status = :NEW.EMP_STATUS
WHERE emp_id = :NEW.EMP_ID;
END iof_MY_TRIGGER;
/
要在您的表格表单中包含一个复选框,请将您的表格表单更改为如下内容:
SELECT emp_id
, emp_name
, apex_item.checkbox2(5, emp_status, DECODE(emp_status, 1,'CHECKED',0))
FROM table1
您可以在 here
中阅读更多相关信息对我有用的解决方案是,将字段设置为 editable
,其余部分在报告中显示为纯文本。
双击要编辑的表格报告区域下的列,将字段类型设置为Simple Checkbox
for title Display as
under the section Column Attributes
现在,在 List of Values
下的同一页面上,输入 1,0
1=> 已检查
0=> 未选中
这就是一个需要。