如何在oracle中插入表后自动添加word值
我有这张桌子:如何在oracle中插入表后自动添加word值,oracle,Oracle,我有这张桌子: create table a( id_a number(5) not null, name varchar2(15) not null, address varchar2(30), phone varchar2(12), constraint pk_a primary key (id_a) ); 在我插入表格之后, 我想在字段“name”中的值后面添加单词automatic 1,格雷斯,澳大利亚,011111 然后,我想在后面插入这个。值Grace自动将S、Comp添加
create table a(
id_a number(5) not null,
name varchar2(15) not null,
address varchar2(30),
phone varchar2(12),
constraint pk_a primary key (id_a)
);
在我插入表格之后,
我想在字段“name”中的值后面添加单词automatic
1,格雷斯,澳大利亚,011111
然后,我想在后面插入这个。值Grace自动将S、Comp添加到单词后面
1,澳大利亚格雷斯S.公司,011111
谢谢您可以使用触发器(插入前-每行):
此触发器将自动更改“名称”列(仅当“名称”不为空时) 嗯?什么意思?“S.Comp”来自哪里?请具体说明。为什么要修改名称?如果您以后需要原始名称,该怎么办?我想在插入表a后在字段名称中添加关键字S.Comp automatic。您需要在手册中插入触发器之前查找。如果您要添加到所有名称中的是静态关键字,则可以使用视图,或添加虚拟字段以附加该后缀。如果标题在行与行之间可能发生变化,您可以添加一列来存储它。我可以在不使用触发器的情况下插入它吗?但是使用过程或函数。可以,但是不能使用直接插入,那么必须始终调用过程以在表中插入。
create trigger your_trigger_name before insert on a for each row
when (new.name is not null)
begin
:new.name := :new.name || ' S.Comp';
end;