Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Utama harus menyertakan semua kolom dalam tabel kesalahan lokasi partisi?

Anda mempartisi data menggunakan fldconfirmdate, yang merupakan bagian dari PK Anda, tetapi bukan bagian dari fld_id KUNCI UNIK Anda.

Ini diekstrak dari Panduan MySQL :

Artinya, menjadikan fldconfirmdate sebagai bagian dari 'fld_id´ KUNCI UNIK Anda akan menyelesaikan masalah.

CREATE TABLE `tbl_emp_confirmation` (
  `fld_id` int(11) NOT NULL AUTO_INCREMENT,
  `fldemp_id` varchar(100) DEFAULT NULL,
  `fldempname` varchar(100) DEFAULT NULL,
  `fldjoindate` varchar(100) DEFAULT NULL,
  `fldconfirmdate` Date NOT NULL,
  `fldresigndate` varchar(100) DEFAULT NULL,
  `fldstatus` varchar(50) DEFAULT NULL,
  `fldcon_status` varchar(100) DEFAULT NULL,
  UNIQUE KEY `fld_id` (`fld_id`, `fldconfirmdate`),
  KEY `in_empconfirmation` (`fldemp_id`,`fldempname`,`fldjoindate`,`fldconfirmdate`)
  ) PARTITION BY RANGE ( Month(fldconfirmdate))
  (PARTITION p_JAN VALUES LESS THAN (TO_DAYS('2011-01-01')),
 PARTITION p_FEB VALUES LESS THAN (TO_DAYS('2011-02-01')),
 PARTITION p_MAR VALUES LESS THAN (TO_DAYS('2011-03-01')),
 PARTITION p_APR VALUES LESS THAN (TO_DAYS('2011-04-01')),
 PARTITION p_MAY VALUES LESS THAN (TO_DAYS('2011-05-01')),
 PARTITION p_MAX VALUES LESS THAN MAXVALUE );



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Temukan Perbedaan antara pemimpin dan Sebelumnya di tabel hasil

  2. Variabel pengguna aman PHP

  3. Cara Mengaktifkan Operator Penggabungan Pipa di MySQL

  4. mysql auto_increment sebesar 5?

  5. Akses ditolak untuk pengguna 'root'@'localhost'