oracle 基础

计算两个时间之间的小时差:

 round(to_number(sysdate-endDate)*24) as QsHour

 

 天数:

 round(to_number(sysdate-endDate)) as QsDay

 

增加字段:

 alter table table1 add (列名 int);

 

nvl函数

相当于sql中的isnull 

nvl(列,0)如果为null 则给默认值0

 

判断一个表存在不存在,如果不存在 则创建

 

declare

i integer;

begin

select count(*) into i from user_tables where table_name = 'F_INFO';

if i > 0 then

dbms_output.put_line('该表存在!');
else

dbms_output.put_line('该表不存在');

execute immediate 'CREATE TABLE F_Info(ID varchar(50) NOT NULL PRIMARY KEY,InfoID varchar(25),UserID varchar(10), DepID varchar(25))';

end if;

end;

判断一个列是否存在,如果不存在,则追加

 

declare
i int;
begin
select count(*) into i from User_Tab_Columns where table_name='F_INFO' and column_name='F_MESSAGEINFO';
if i=0 then
execute immediate 'alter table T_Infos add (F_MessageInfo varchar(500))';
else
dbms_output.put_line('该列存在!');
end if;
end;

 

 

不积跬步 无以至千里。不积小流 无以至江海。

勉励自己一下,慢慢扩充。

posted @ 2012-05-29 13:58  依然乐观  阅读(154)  评论(0编辑  收藏  举报