程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MySQL修改表結構操作命令總結

MySQL修改表結構操作命令總結

編輯:關於MYSQL數據庫

表的結構如下:

復制代碼 代碼如下:
mysql> show create table person;
| person | CREATE TABLE `person` (
  `number` int(11) DEFAULT NULL,
  `name` varchar(255) DEFAULT NULL,
  `birthday` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 |

刪除列:

復制代碼 代碼如下:
ALTER TABLE person DROP COLUMN birthday;

添加列:

復制代碼 代碼如下:
ALTER TABLE person ADD COLUMN birthday datetime;

修改列,把number修改為bigint:

復制代碼 代碼如下:
ALTER TABLE person MODIFY number BIGINT NOT NULL;

或者是把number修改為id,類型為bigint:

復制代碼 代碼如下:
ALTER TABLE person CHANGE number id BIGINT;

添加主鍵:

復制代碼 代碼如下:
ALTER TABLE person ADD PRIMARY KEY (id);

刪除主鍵:

復制代碼 代碼如下:
ALTER TABLE person DROP PRIMARY KEY;

添加唯一索引:

復制代碼 代碼如下:
ALTER TABLE person ADD UNIQUE name_unique_index (`name`);

為name這一列創建了唯一索引,索引的名字是name_unique_index.

添加普通索引:

復制代碼 代碼如下:
ALTER TABLE person ADD INDEX birthday_index (`birthday`);

刪除索引:

復制代碼 代碼如下:
ALTER TABLE person DROP INDEX birthday_index;
ALTER TABLE person DROP INDEX name_unique_index;

禁用非唯一索引

復制代碼 代碼如下:
ALTER TABLE person DISABLE KEYS;

ALTER TABLE...DISABLE KEYS讓MySQL停止更新MyISAM表中的非唯一索引。

激活非唯一索引

復制代碼 代碼如下:
ALTER TABLE person ENABLE KEYS;

ALTER TABLE ... ENABLE KEYS重新創建丟失的索引。

把表默認的字符集和所有字符列(CHAR, VARCHAR, TEXT)改為新的字符集:

復制代碼 代碼如下:
ALTER TABLE person CONVERT TO CHARACTER SET utf8;

修改表某一列的編碼

復制代碼 代碼如下:
ALTER TABLE person CHANGE name name varchar(255) CHARACTER SET utf8;

僅僅改變一個表的默認字符集

復制代碼 代碼如下:
ALTER TABLE person DEFAULT CHARACTER SET utf8;

修改表名

復制代碼 代碼如下:
RENAME TABLE person TO person_other;

移動表到其他數據庫

復制代碼 代碼如下:
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved