日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

oracle刪除超過N天數據腳本的方法_oracle

作者:不輟 ? 更新時間: 2022-05-01 編程語言

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

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

首先刪除數據的sql語句寫一下

DELETE FROM tablename WHERE createdtime

這一段相當于

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

然后創建一個文件C:\get_emp.bat

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

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

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

當然,操作數據庫表不局限于定期清理數據,也可以進行報表生成、新表創建等其他操作

原文鏈接:https://www.cnblogs.com/wangpengzong/archive/2022/02/28/15944641.html

欄目分類
最近更新