oracle建立触发器 实现自增实例
create table TN_TEST(
username varchar2(32),
userpass varchar2(32),
version number
)
要求一:
TN_TEST表中字段version
每次修改TN_TEST表则讲version自动加一
建立触发器语句:
create trigger add_ver before update on TN_TEST for each row begin
:new.version:=:old.version+1;
end;
要求二:
用触发器和序列实现自增
/*首先创建序列*/
create sequence SEQ_TN_TEST increment by 1 start with 1 MAXVALUE 9999999
/*创建触发器实现自增*/
Create Trigger up_ver Before
Update On TN_TEST
For Each Row begin
select SEQ_TN_TEST.nextval into :new.version
from dual;
end up_ver;
/*触发器结束*/
相关文档:
60.AVG(DISTINCT|ALL)
all表示对所有的值求平均值,distinct只对不同的值求平均值
SQLWKS> create table table3(xm varchar(8),sal number(7,2));
语句已处理。
SQLWKS> insert into table3 values(gao,1111.11);
SQLWKS> insert into table3 values(gao,1111.11);
SQLWKS> insert into table3 values(zhu ......
select i.sid,i.sname,i.birthday,i.schooltime,i.sphone,c.classname,a.assnname,sum(decode(subject,'语文',s.score,0)) as chin,
......
在oracle中处理日期大全
TO_DATE格式
Day:
dd number 12
dy abbreviated fri
day spelled out friday
ddspth spelled out, ordinal twelfth
Month:
mm number 03
mon abbreviated mar ......
查找数据库中所有字段 以对应的表
select C.column_name,C.TABLE_NAME from dba_tab_columns C where owner=''
查每个科目class 分数scro前三名
select id, name, class, scro
from (select row_number() over(partition by class order by scro desc) cnt,
&n ......