1

申し訳ありませんが、私は英語を知りませんが、助けが必要です:(

ALTERTABLEステートメントによるLISTCOLUMNSによるパーティショニングを使用しています。私のテーブル:

table member_list: 
id int,
name varchar(255),
company varchar(255),
cell_phone varchar(20)

私は現在900.000以上のレコードを持っています。挿入後、LISTCOLUMNSでテーブルを分割してみました。

alter table member_list
partition by list columns(company)(
    partition p1 values in ('Lavasoft','Cakewalk','Lycos'),
    partition p2 values in ('Adobe','Vivoo','Apple Systems','Sibelius'),
    partition p3 values in ('Finale','Borland','Macromedia','FPT'),
    partition p4 values in ('Chami','Yahoo','Google','Altavista')
)

実行後:

#1526-テーブルにcolumn_listからの値のパーティションがありません

MySQLからこのエラーが返されました。Oracleページからサポートが見つかりません。あなたが私を助けてくれることを願っています。ありがとう

4

2 に答える 2

3

#1526 - テーブルには column_list の値のパーティションがありません

エラー メッセージは、定義されたパーティションで説明されていない、パーティション分割用に選択した列の 1 つのデータに値があることを示しています。

この場合、「会社」フィールドには、どのパーティションにも配置できないものがあります。たとえば、ある記録では、company="Blackberry" です。MySQL は、この行をどのパーティションにも入れることができません。

于 2015-03-12T03:25:32.220 に答える
1

LIST パーティショニングでは、整数値のみが許可されます。varchar パーティショニングで列を使用する場合は、HASH または KEY PARTITIONS を使用します。また、パーティションは、プライマリまたは一意の属性を持つ列でのみ使用できます。

于 2014-01-15T10:38:30.540 に答える