MySQL库、表结构、表字段的查询、更改操作

1.查询所有数据库

SHOW DATABASES;

MySQL库、表结构、表字段的查询、更改操作

2.查询库中所有表

写法1:

USE [DATABASE_NAME];
② SHOW TABLES; 

MySQL库、表结构、表字段的查询、更改操作

写法2:

SHOW TABLES FROM [DATABASE_NAME]

MySQL库、表结构、表字段的查询、更改操作

3. 查询表结构

写法1:

USE [DATABASE_NAME];
② SHOW CREATE TABLE [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法2:

SHOW CREATE TABLE [DATABASE_NAME.TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

4. 查询表所有字段

写法1:

USE [DATABASE_NAME];
② SHOW COLUMNS FROM [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法2:

SHOW COLUMNS FROM [DATABASE_NAME.TABLE_NAME];

 MySQL库、表结构、表字段的查询、更改操作

写法3:

USE [DATABASE_NAME];
② SHOW FIELDS FROM [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法4:

SHOW FIELDS FROM [DATABASE_NAME.TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

扩展MySQL安装完成后,一般会有mysql库、information_schema库、test库等,而infomation_schema库中有一个表为COLUMNS 的表,这个表记录了所有数据库所有表的字段信息,因此可以通过这个表查询某个表的字段信息,但这样查的话会查出所有同名的表

写法5:

SELECT COLUMN_NAME, COLUMN_TYPE from information_schema.COLUMNS WHERE TABLE_NAME = '[TABLE_NAME]';

MySQL库、表结构、表字段的查询、更改操作

因此还可以约束所在库,例如

写法6:

SELECT COLUMN_NAME, COLUMN_TYPE from information_schema.COLUMNS WHERE TABLE_SCHEMA = '[DATABASE_NAME]' AND TABLE_NAME = '[TABLE_NAME]';

MySQL库、表结构、表字段的查询、更改操作

5. 查询表所有字段及详细信息

写法1:

USE [DATABASE_NAME];
② SHOW FULL COLUMNS FROM [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法2:

SHOW FULL COLUMNS FROM [DATABASE_NAME.TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法3:

USE [DATABASE_NAME];
② SHOW FULL FIELDS FROM [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法4:

SHOW FULL FIELDS FROM [DATABASE_NAME.TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

6. 查询表中所有索引

写法1:

USE [DATABASE_NAME];
② SHOW INDEX FROM [TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

写法2:

SHOW INDEX FROM [DATABASE_NAME.TABLE_NAME];

MySQL库、表结构、表字段的查询、更改操作

7. 查询MySQL系统环境变量

SHOW VARIABLES;

直接使用此语句查询结果非常多!

用此命令查询当前MySQL 默认编码集:进入MySQL后直接输入命令

SHOW VARIABLES LIKE 'CHARACTER_SET_DATABASE';

MySQL库、表结构、表字段的查询、更改操作

用此命令查询某个库的编码集:

USE [DATABASE];
② SHOW VARIABLES LIKE 'CHARACTER_SET_DATABASE';

MySQL库、表结构、表字段的查询、更改操作

8. 查看当前连接数,root账号可以看到所有连接,普通账号只能看到自己的连接

SHOW PROCESSLIST;

MySQL库、表结构、表字段的查询、更改操作

9. 查询用户权限

SHOW GRANTS FOR [USER];

MySQL库、表结构、表字段的查询、更改操作

10.删除默认值,反引号(`)可加可不加

ALTER TABLE myemployees.jobs ALTER `job_id` DROP DEFAULT;

11.设置默认值、如存在则覆盖默认值

ALTER TABLE myemployees.jobs ALTER `job_id` SET DEFAULT 0;

12.修改字段类型

ALTER TABLE myemployees.jobs MODIFY `job_id` INT(2);
ALTER TABLE myemployees.jobs CHANGE `job_id` `job_id` INT(2);

13.修改字段名字

ALTER TABLE myemployees.jobs CHANGE `job_id` `job_id_new` INT(2);