oracle 表 视图 存储过程 序列 job
生活随笔
收集整理的這篇文章主要介紹了
oracle 表 视图 存储过程 序列 job
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
table 表 --delete table drop?table?Test1; --?Create?table create?table?TEST1 ( ID?????NUMBER, T_NAME?VARCHAR2(100), DT?????DATE ); -- 添加注釋 comment?on?column?TEST1.T_NAME?is?'名稱'; --添加age字段 alter?table?Test1?add?(age??NUMBER(8)); --刪除字段 alter?table?TABLE_NAME?drop?column?COLUMN_NAME; --修改字段數(shù)據(jù)類型 alter?table?tablename?modify?filedname?varchar2(20);
view 視圖 ---刪除視圖
drop?view?v_viewName; ---創(chuàng)建視圖 create?or?replace?view?v_viewName as select * from tableName with?read?only;
sequence 序列 create?sequence?RUN_LOG_SEQ minvalue?1 maxvalue?9999999999999999999999999999 start?with?1--從1開(kāi)始計(jì)數(shù) increment?by?1--每次加1 cache?20; 使用run_log_seq.nextval
index 索引 ---刪除索引
drop index?indexName?
---創(chuàng)建索引
create?index?indexName?ON?tableName?(columnName);
procedures 存儲(chǔ)過(guò)程 --定義參數(shù) CREATE?OR?REPLACE?PROCEDURE?pro_test(yyyy_mm_s?date,yyyy_mm_e?date)?IS var_b_time?DATE;--定義變量? BEGIN --游標(biāo)循環(huán) for?v?in?( select?sysdate?t?from?DUAL )?loop --業(yè)務(wù)處理... var_b_time:=v.t; end?loop; --提交 commit; END;
funcations 函數(shù) --par_master_bill_id參數(shù) CREATE?OR?REPLACE?FUNCTION?get_testFunction(par_master_bill_id?VARCHAR2)? RETURN?varchar2?IS PRAGMA?AUTONOMOUS_TRANSACTION; ret_value????VARCHAR2(100);--返回值 BEGIN select?sysdate||par_master_bill_id?into?ret_value?from?DUAL; RETURN?ret_value; END?get_testFunction;--函數(shù)名結(jié)束 使用如下: select?get_testFunction('hello')?from?DUAL;
job 定時(shí)任務(wù) delete?hk_amast_list; --查詢所有定時(shí)器 SELECT?*?FROM?ALL_JOBS; --刪除job begin dbms_job.remove(9);--先查詢定時(shí)器id end; --創(chuàng)建定時(shí)器 declare? job?number;? begin? dbms_job.submit(job,?'p_amastList;',?sysdate,?'TRUNC(SYSDATE+1)+(1*60+30)/(24*60)');? end commit; select?t.*?from?t_test?t; --'TRUNC(SYSDATE+1)+(1*60+30)/(24*60)'?每天凌晨1:30執(zhí)行一次 --例如:每天的凌晨2點(diǎn)執(zhí)行Interval?=>?TRUNC(sysdate)?+?1?+2?/?(24) --每天早上8點(diǎn)30分?'TRUNC(SYSDATE?+?1)?+?(8*60+30)/(24*60)' --每分鐘執(zhí)行一次'TRUNC(sysdate,''mi'')+1/(24*60)'
merge merge?into?TEST2?t2 using?( select?t1.id,t1.t_name,t1.dt?from?TEST1?t1 )?t1?on(t2.id=t1.id?and?t2.t_name=t1.t_name) when?matched?then update?set?t2.t_name=t1.t_name,t2.dt=t1.dt when?not?matched?then insert?(id,t_name,dt) values(t1.id,t1.t_name,t1.dt); commit;
view 視圖 ---刪除視圖
drop?view?v_viewName; ---創(chuàng)建視圖 create?or?replace?view?v_viewName as select * from tableName with?read?only;
sequence 序列 create?sequence?RUN_LOG_SEQ minvalue?1 maxvalue?9999999999999999999999999999 start?with?1--從1開(kāi)始計(jì)數(shù) increment?by?1--每次加1 cache?20; 使用run_log_seq.nextval
index 索引 ---刪除索引
drop index?indexName?
---創(chuàng)建索引
create?index?indexName?ON?tableName?(columnName);
procedures 存儲(chǔ)過(guò)程 --定義參數(shù) CREATE?OR?REPLACE?PROCEDURE?pro_test(yyyy_mm_s?date,yyyy_mm_e?date)?IS var_b_time?DATE;--定義變量? BEGIN --游標(biāo)循環(huán) for?v?in?( select?sysdate?t?from?DUAL )?loop --業(yè)務(wù)處理... var_b_time:=v.t; end?loop; --提交 commit; END;
funcations 函數(shù) --par_master_bill_id參數(shù) CREATE?OR?REPLACE?FUNCTION?get_testFunction(par_master_bill_id?VARCHAR2)? RETURN?varchar2?IS PRAGMA?AUTONOMOUS_TRANSACTION; ret_value????VARCHAR2(100);--返回值 BEGIN select?sysdate||par_master_bill_id?into?ret_value?from?DUAL; RETURN?ret_value; END?get_testFunction;--函數(shù)名結(jié)束 使用如下: select?get_testFunction('hello')?from?DUAL;
job 定時(shí)任務(wù) delete?hk_amast_list; --查詢所有定時(shí)器 SELECT?*?FROM?ALL_JOBS; --刪除job begin dbms_job.remove(9);--先查詢定時(shí)器id end; --創(chuàng)建定時(shí)器 declare? job?number;? begin? dbms_job.submit(job,?'p_amastList;',?sysdate,?'TRUNC(SYSDATE+1)+(1*60+30)/(24*60)');? end commit; select?t.*?from?t_test?t; --'TRUNC(SYSDATE+1)+(1*60+30)/(24*60)'?每天凌晨1:30執(zhí)行一次 --例如:每天的凌晨2點(diǎn)執(zhí)行Interval?=>?TRUNC(sysdate)?+?1?+2?/?(24) --每天早上8點(diǎn)30分?'TRUNC(SYSDATE?+?1)?+?(8*60+30)/(24*60)' --每分鐘執(zhí)行一次'TRUNC(sysdate,''mi'')+1/(24*60)'
merge merge?into?TEST2?t2 using?( select?t1.id,t1.t_name,t1.dt?from?TEST1?t1 )?t1?on(t2.id=t1.id?and?t2.t_name=t1.t_name) when?matched?then update?set?t2.t_name=t1.t_name,t2.dt=t1.dt when?not?matched?then insert?(id,t_name,dt) values(t1.id,t1.t_name,t1.dt); commit;
?
關(guān)注我的微信共享學(xué)習(xí),討論更多技術(shù)知識(shí)?個(gè)人網(wǎng)站:https://www.liyuan3210.com
轉(zhuǎn)載于:https://www.cnblogs.com/liyuan3210/p/6429457.html
總結(jié)
以上是生活随笔為你收集整理的oracle 表 视图 存储过程 序列 job的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: java删除文件夹及下面的所有文件
- 下一篇: uniapp微信公众号h5微信授权登录