欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

oracle刪除超過N天數(shù)據(jù)腳本的方法

 更新時間:2022年02月28日 14:52:25   作者:不輟  
這篇文章主要介紹了oracle刪除超過N天數(shù)據(jù)腳本的方法,本文通過sql語句給大家詳細(xì)說明講解,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

公司內(nèi)做的項目是工廠內(nèi)的,一般工廠內(nèi)數(shù)據(jù)要求的是實時性,很久之前的數(shù)據(jù)可以自行刪除處理,我們數(shù)據(jù)庫用的oracle,所以就想著寫一個腳本來刪除,這樣的話,腳本不管放在那里使用都可以達(dá)到效果

由于服務(wù)器是windows,參照Oracle Shell Scripting中,我們寫一下windows下的腳本

首先刪除數(shù)據(jù)的sql語句寫一下

DELETE FROM tablename WHERE createdtime<TRUNC(SYSDATE)-59;  --刪除59天前的數(shù)據(jù)
commit;   --提交事務(wù)
alter table tablename enable row movement;  --數(shù)據(jù)刪除之后會產(chǎn)生很多空行,打開行移動,移動之后rowid會發(fā)生變化
alter table tablename shrink space;  --連同索引一起壓縮,解決delete語句造成的空間未釋放問題
alter table tablename disable row movement;  --關(guān)閉行遷移

這一段相當(dāng)于

SPOOL C:\emp.lst
SET LINESIZE 100
SET PAGESIZE 50
SELECT *
FROM emp;
SPOOL OFF

所以我們得到了一個新的sql文件,例如C:\emp.sql

CONNECT scott/tiger
--開始刪除
DELETE FROM tablename WHERE createdtime<TRUNC(SYSDATE)-59;
commit;
alter table tablename enable row movement;
alter table tablename shrink space;
alter table tablename disable row movement;
--結(jié)束刪除
--如果刪除多個表,可以將上面語句復(fù)制一下,tablename和where條件修改一下就可以了
EXIT;

然后創(chuàng)建一個文件C:\get_emp.bat

@echo off
echo 開始刪除過期數(shù)據(jù)并縮容
sqlplus /nolog @C:\emp.sql
echo 執(zhí)行成功
pause
exit

保存之后,執(zhí)行一下看會不會出現(xiàn)問題,如果不會出現(xiàn)問題,添加一下windows的任務(wù)計劃程序,或者自己寫一個windows服務(wù),定期調(diào)用一下這個bat就可以了

linux版本的類似,寫法這個連接下面有,寫完之后先進(jìn)行測試,然后使用cron或者其他進(jìn)行定期調(diào)用即可

當(dāng)然,操作數(shù)據(jù)庫表不局限于定期清理數(shù)據(jù),也可以進(jìn)行報表生成、新表創(chuàng)建等其他操作

到此這篇關(guān)于oracle刪除超過N天數(shù)據(jù)腳本的文章就介紹到這了,更多相關(guān)oracle刪除數(shù)據(jù)腳本內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • oracle報錯(ORA-00600)問題處理

    oracle報錯(ORA-00600)問題處理

    最近在做一個項目,使用的是Oracle數(shù)據(jù)庫,近兩天不知道怎么回事,告警日志里總是顯示這個錯誤(ORA-00600:internalerrorcode,arguments:[kcblasm_1],[103],[],[],[],[],[],[])度娘了一下,終于找到解決方式,分享給大家
    2014-08-08
  • Oracle用戶密碼過期如何修改永不過期

    Oracle用戶密碼過期如何修改永不過期

    針對不同的業(yè)務(wù)場景會有不一樣的業(yè)務(wù)需求,oracle的用戶密碼,生產(chǎn)環(huán)境肯定需要定期進(jìn)行更換,保證安全性,但是也同樣會有需求要求oracle用戶的密碼永遠(yuǎn)不過期,這篇文章主要給大家介紹了關(guān)于Oracle用戶密碼過期如何修改永不過期的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • Oracle安裝監(jiān)聽器錯誤的解決方法

    Oracle安裝監(jiān)聽器錯誤的解決方法

    這篇文章給大家介紹了oracle安裝監(jiān)聽器錯誤的解決方法,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-09-09
  • Oracle服務(wù)端1521端口無法telnet,服務(wù)名未開啟監(jiān)聽的解決

    Oracle服務(wù)端1521端口無法telnet,服務(wù)名未開啟監(jiān)聽的解決

    這篇文章主要介紹了Oracle服務(wù)端1521端口無法telnet,服務(wù)名未開啟監(jiān)聽的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Oracle之TO_DATE用法詳解

    Oracle之TO_DATE用法詳解

    這篇文章主要介紹了Oracle之TO_DATE用法詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Oracle數(shù)據(jù)加密方法分析

    Oracle數(shù)據(jù)加密方法分析

    這篇文章主要介紹了Oracle數(shù)據(jù)加密方法,實例分析了Oracle基于md5算法的數(shù)據(jù)加密技巧,需要的朋友可以參考下
    2016-09-09
  • 判定一個字符串是否為有效時間的函數(shù)

    判定一個字符串是否為有效時間的函數(shù)

    判定時間是否有效的函數(shù),為有效時間則返回1,不是有效時間則返回0,需要的朋友可以參考下
    2014-07-07
  • Oracle數(shù)據(jù)庫之PL/SQL使用流程控制語句

    Oracle數(shù)據(jù)庫之PL/SQL使用流程控制語句

    這篇文章介紹了Oracle數(shù)據(jù)庫之PL/SQL使用流程控制語句的方法,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Win11系統(tǒng)下Oracle11g數(shù)據(jù)庫下載與安裝使用詳細(xì)教程(圖解)

    Win11系統(tǒng)下Oracle11g數(shù)據(jù)庫下載與安裝使用詳細(xì)教程(圖解)

    Oracle11g是Oracle公司出的一個比較輕量版的數(shù)據(jù)庫,在window系統(tǒng)上安裝比較方便,這篇文章主要給大家介紹了關(guān)于Win11系統(tǒng)下Oracle11g數(shù)據(jù)庫下載與安裝使用的相關(guān)資料,需要的朋友可以參考下
    2023-12-12
  • Oracle dbca時報:ORA-12547: TNS:lost contact錯誤的解決

    Oracle dbca時報:ORA-12547: TNS:lost contact錯誤的解決

    這篇文章主要給大家介紹了關(guān)于Oracle在dbca時報:ORA-12547: TNS:lost contact錯誤的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-11-11

最新評論