1
嗨夥計 我試圖自動化這裏的分區過程,並且很好地處理奇怪的事情。 爲什麼以下工作?使用last_day的奇數分區
create table flp_aa (cdate date, value varchar2(255))
PCTUSED 0
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64M
)
LOGGING
PARTITION BY RANGE (cdate)
(
PARTITION flp_aa_1010 VALUES LESS THAN (last_day(to_date('20101101', 'YYYYMMDD')))
NOLOGGING
NOCOMPRESS
PCTFREE 10
INITRANS 1
MAXTRANS 255
STORAGE (
INITIAL 64M
NEXT 512K
MINEXTENTS 1
MAXEXTENTS UNLIMITED
PCTINCREASE 0
BUFFER_POOL DEFAULT
)
)
的想法是使用last_day(to_date('20101101', 'YYYYMMDD'))
所以每個分區漂亮上月的最後一天結束,大家很高興。不過,我得到一個ORA-14019試圖執行這些代碼時...
[更新]
織補奇:
這工作:
(...)
PARTITION flp_aa_1010 VALUES LESS THAN (to_date('20101101', 'YYYYMMDD'))
(...)
這不工作:
(...)
PARTITION flp_aa_1010 VALUES LESS THAN (last_day(to_date('20101101', 'YYYYMMDD')))
(...)
這不會再:
(...)
PPARTITION flp_aa_1010 VALUES LESS THAN to_date(last_day(to_date('201010','YYYYMM'))))
(...)
什麼鴨子?我錯過了哪堂課? 是不是所有這些功能的輸出相同?
任何人都可以啓發我嗎?
歡呼聲
f。
嗯..不大。我曾嘗試過。似乎並非如此。你看,字段`cdate`是日期類型的。如果你只是做'...價值小於(to_date('20101101','YYYYMMDD'))...`它的工作!儘管如此,我還嘗試將我的cdate轉換爲字符串並使用to_char,並且在放置「last_day」時奇怪... – filippo 2010-11-25 14:20:20