查看修改MySQL表结构命令

(编辑:jimmy 日期: 2024/12/25 浏览:2)

简述

小编经常会遇到一些数据库编码不对得问题,好TM头疼,这里做一个记录,供大家参考。

修改数据库字符集:

ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE …];

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

ALTER TABLE tbl_name DEFAULT CHARACTER SET character_name [COLLATE…];

如:ALTER TABLE myAPP_cont1 DEFAULT CHARACTER SET utf8;

修改字段的字符集:

ALTER TABLE tbl_name CHANGE c_name c_name CHARACTER SET character_name [COLLATE …];

如:

ALTER TABLE logtest CHANGE title title VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_general_ci;

ALTER TABLE myAPP_cont1 CHANGE titles titles VARCHAR(100) CHARACTER SET utf8;

查看数据库编码:

SHOW CREATE DATABASE db_name;

查看表编码:

SHOW CREATE TABLE tbl_name;

查看字段编码:

SHOW FULL COLUMNS FROM tbl_name;

添加主键或索引

1. 添加主键

ALTER TABLE 表名 ADD PRIMARY KEY (字段名);

alter table table_a ADD PRIMARY KEY (id);

2. 删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

alter table table_a DROP PRIMARY KEY;

3. 添加唯一索引

ALTER TABLE 表名 ADD UNIQUE 索引名(字段名);

alter table table_a ADD UNIQUE column_a_unique_index (column_a);

4. 添加普通索引

ALTER TABLE 表名 ADD INDEX 索引名 (字段名);

alter table table_a ADD INDEX column_a_index (column_a);

5. 删除索引

ALTER TABLE 表名 DROP INDEX 索引名;

alter table table_a DROP INDEX column_a_index;