MySQL索引の追加、一意制約、フィールドの変更

2214 ワード

索引の追加
1.PRIMARY KEY(プライマリ・キー・インデックス)mysql>ALTER TABLE`table_name`ADD PRIMARY KEY(`column`)2を追加する.UNIQUE(ユニークインデックス)mysql>ALTER TABLE`table_の追加name` ADD UNIQUE ( `column` ) 
3.INDEX(通常インデックス)mysql>ALTER TABLE`table_を追加name` ADD INDEX idx_name ( `column` )  4.FULLTEXT(全文索引)mysql>ALTER TABLE`table_を追加name` ADD FULLTEXT ( `column`)  5.複数列インデックスの追加mysql>ALTER TABLE`table_name` ADD INDEX idx_name ( `column1`, `column2`, `column3` )
一意の制約を追加する構文の形式は、次のとおりです.
ALTER TABLE ADD CONSTRAINT UNIQUE();
例:alter table t_cloud_cube_items_follow add CONSTRAINT uq_item_emp unique (item_id,emp_id);
または
alter tablテーブル名add unique(ワードセグメント名);
例:alter table t_cloud_cube_items_follow add unique uq_item_emp_id(item_id,emp_id,id);
MySQLで一意の制約を削除する構文形式は次のとおりです.
ALTER TABLE DROP INDEX ;
例:ALTER TABLE t_cloud_cube_items_follow DROP INDEX uq_item_emp_id;
ユニーク制約とユニークインデックスはMySQLデータベースで区別されます
  • は概念的に異なり、制約はデータの完全性を保証するためであり、インデックスはクエリーを補助するためである.
  • 一意制約を作成すると、自動的に一意インデックスが作成されます.
  • は理論的には異なり、実際に使用する場合、ほとんど違いはありません.

  • フィールドを追加:
     ALTER TABLE table_name ADD field_name field_type;
    例:alter table t_store_brand add   `store_type`tinyint(4)NOT NULL DEFAULT'0'COMMENT'データ型(データ型:0 pop,1自営)'after store_code;
    フィールドの変更
    名前を変更せずにmodifyを使用
         alter table t_store_info modify column store_name varchar(100)NOT NULL DEFAULT'COMMENT'店舗名'
    変更名変更フォーマットは変更する名前の新しい名前です...ALTER   TABLE   USERS CHANGE  name   username  varchar (20)  NOT   NULL   COMMENT  ' ' ;
    フィールドを変更して空にする
    alter tableテーブル名modifyフィールド名フィールドタイプ(長さ)null;
    例:alter table t_customer_groupdata_market modify `shop_id` varchar(12)   NULL;
    フィールドの削除ALTER   TABLE   USERS  DROP   COLUMN   alias;
    alter tableテーブル名alter columnフィールド名drop default;(デフォルト値が存在する場合は削除)
    alter tableテーブル名alter columnフィールド名set defaultデフォルト値;(自身が存在しなければ直接設定可能)