mysql按日期創建分區

在創建分區表時,mysql報了這樣一個錯誤。

ERROR 1503 (HY000): A PRIMARY KEY must include all columns in the table's partitioning function
  • 1

大意是用於做分區表的列必須是主鍵,或包含於主鍵中

明白原因後就好處理了,把用於分區的列也加入到主鍵中,形成複合主鍵,然後再執行。


1.將用於分區的列添加爲複合主鍵




添加複合主鍵成功後,在用命令創建分區:

ALTER TABLE history PARTITION BY RANGE (TO_DAYS(tal_time))
(
PARTITION p_20180101 VALUES LESS THAN (TO_DAYS('2018-01-01')),
PARTITION p_20180201 VALUES LESS THAN (TO_DAYS('2018-02-01')),
PARTITION p_20180301 VALUES LESS THAN (TO_DAYS('2018-03-01')),
PARTITION p_20180401 VALUES LESS THAN (TO_DAYS('2018-04-01')),
PARTITION p_max VALUES LESS THAN MAXVALUE );



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章