我有一个交互式网格。
select alpha, beta, gamma from vectors;
在此网格中,一旦保存了 beta 值,就不允许修改。
所以我创建了一个新记录:
alpha = A1
Beta = B1
Gamma = C1
这条新记录保存后,alpha和gamma可以修改,但Beta不能修改。
如何实现这一目标?
这可以使用“只读”属性进行管理。可以使用绑定变量语法 (
:COLUMN
) 引用列值。为此不需要动态操作。
示例:
有一张桌子mytable。 ITEM 列只能插入,不能更新。
create table mytable (
id number generated by default on null as identity
constraint mytable_id_pk primary key,
item varchar2(100 char),
price number
);
在交互式网格中,设置“表达式”类型的只读条件,代码
:ID IS NOT NULL
,并确保将“执行”设置为“对于每行”,因为需要对每一行进行评估。现在,当添加新行时,ITEM 列是可编辑的,但保存后它是只读的。