每个月我们都要为所述月份的事务划分一个表,并且我们想自动化该过程,我正在考虑使用crontab,但是问题在于我需要一些参数,例如date和分区表即可。
这是一台运行SunOS的服务器,但除默认sh以外,我不能使用其他shell,这使得编写shell脚本来运行查询有点麻烦,但这仍然是我想要的。
这是我们对表进行分区的方式:
ALTER TABLE SCHEME.TABLE ADD PARTITION "NAME_201905" VALUES LESS THAN
(TO_DATE('2019-05-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN')) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
COMPRESS FOR OLTP LOGGING
STORAGE(INITIAL 8388608 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "TABLESPACE";
我们需要一种每月执行一次查询的方法,并且每个参数都应与当前日期匹配。
答案 0 :(得分:0)
创建或更改表以具有间隔分区。此要求将自动得到满足。
您可以设置小时,天,周,月或年的时间间隔。
每次出现新月的数据时,Oracle都会自动创建一个新分区。