MySQL查看数据库结构:常用的结构查看命令 (mysql查看数据库结构命令)

在MySQL数据库中,我们经常需要查看数据库的结构,包括数据库和表的结构信息。不同的结构查看命令可以提供不同的信息,因此了解常用的结构查看命令非常重要。本篇文章将介绍MySQL常用的结构查看命令,以帮助您更好地了解MySQL数据库的结构。

1. 显示数据库列表

使用SHOW命令可以列出所有数据库的名称。此命令的基本语法如下:

SHOW DATABASES;

此命令将返回当前MySQL服务器中所有数据库的列表。在此列表中,每个数据库名都是一行。

2. 显示数据库信息

使用DESC命令可以查看数据库的详细信息。此命令的基本语法如下:

DESCRIBE database_name;

此命令将返回指定数据库的详细信息,包括数据库中包含的表和表的详细信息。

3. 显示表列表

使用SHOW命令也可以列出特定数据库中的所有表的名称。此命令的基本语法如下:

SHOW TABLES from database_name;

此命令将返回指定数据库中的所有表的列表。在此列表中,每个表名都是一行。

4. 显示表结构

使用DESC命令可以查看特定数据库中特定表的详细信息,包括表中所有列的详细信息。此命令的基本语法如下:

DESCRIBE table_name;

此命令将返回指定表的详细信息,包括所有列名,及其对应的数据类型、长度、是否允许为空、默认值等信息。

5. 显示索引列表

使用SHOW INDEXES命令可以列出特定表中的所有索引。此命令的基本语法如下:

SHOW INDEXES from table_name;

此命令将返回指定表中所有的索引列表。在此列表中,每个索引名都是一行。

6. 显示存储过程和函数信息

使用SHOW命令也可以列出当前数据库中的所有存储过程和函数的名称。此命令的基本语法如下:

SHOW PROCEDURE STATUS;

SHOW FUNCTION STATUS;

以上两个命令分别返回当前数据库中的所有存储过程和函数的名称列表。在此列表中,每个存储过程或函数名都是一行。

7. 显示触发器信息

使用SHOW TRIGGERS命令可以列出特定表中的所有触发器名字。此命令的基本语法如下:

SHOW TRIGGERS from table_name;

此命令将返回指定表中所有的触发器列表。在此列表中,每个触发器名都是一行。

8. 显示视图信息

使用SHOW命令也可以列出特定数据库中的所有视图的名称。此命令的基本语法如下:

SHOW FULL TABLES IN database_name WHERE TABLE_TYPE LIKE ‘VIEW’;

此命令将返回指定数据库中视图的列表。在此列表中,每个视图名都是一行。

上述是MySQL中常用的结构查看命令。可以使用这些命令来查看数据库、表、索引、存储过程、函数、触发器和视图等的信息。了解这些命令可以帮助您更好地管理和优化MySQL数据库。

相关问题拓展阅读:

mysql 怎么查看创建的数据库和表

1、 //看当前使用的是哪个数据库 ,如果你还没选择任何数据库,结果是NULL。

mysql>select

database();

++

|

DATABASE()

|

++

|

menagerie

|

++

  2、//查看有哪些数据库

mysql> show

databases;

  +——+

|

Database

|

+——+

|

information_schema

|

|

mysql

|

|

test

|

+——+

3、//选择数据库

mysql>use test; //;号可有可无,必须单行使用.

4、为了找出当前的数据库包含什么表(例如,当你不能确定一个表的名字),使用这个命令:

5、  //看数据库里有哪些表

mysql>show

tables;

  ++

|

Tables

in

menagerie

|

++

|

event

|

|

pet

|

++

如果你想要知道一个表的结构,可以使用DESCRIBE命令;它显示表中每个列的信息:

1.

6、  //看表里有哪些列

mysql>

describe

pet;

2.

  +++——+—–+++

|

Field

|

Type

|

Null

|

Key

|

Default

|

Extra

|

+++——+—–+++

|

name

|

varchar(20)

|

YES

|

|

NULL

|

|

|

owner

|

varchar(20)

|

YES

|

|

NULL

|

|

|

species

|

varchar(20)

|

YES

|

|

NULL

|

|

|

***

|

char(1)

|

YES

|

|

NULL

|

|

|

birth

|

date

|

YES

|

|

NULL

|

|

|

death

|

date

|

YES

|

|

NULL

|

|

+++——+—–+++

Field显示列名字,Type是列的数据类型,Null表示列是否能包含NULL值,Key显示列是否被索引而Default指定列的默认值。

如果表有索引,SHOW

INDEX

FROM

tbl_name生成有关索引的信息。

删除数据库.

  mysql>drop

database

test;

方法:

查看数据库表的创建时间可以在information_schema中查看

information_schema数据库表说明:

schemata表:提供了当前mysql实例中所有数据库的信息。是show

databases的结果取之此表。

tables表:提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。是show

tables

from

schemaname的结果取之此表。

数据库表的创建时间在tables表中的create_time字段

select create_time from tables where table_schema=’数据库名’ and table_name=’表名’;

将上面的数据库名以及表名替换为所要查询的数据即可。

mysql

查看有多少个数据库,有多少个表,方法如下:

1、图形界面直接查看:

2、命令查看:

#查看数据库

SHOW DATABASES;#查看表

USE blog;

SHOW TABLES;#查看表中的列

SHOW COLUMNS FROM auth_user;

DESCRIBE auth_user;

注意:describe

表名

show

columns

from

表名

的一种快捷方式。

怎么查看ubuntu mysql数据库

一、mysql服务操作

0、查看数据库版本 sql-> status;

1、net start mysql //启动mysql服务

2、net stop mysql //停止mysql服务 

3、mysql

-h主机地址 -u用户名 -p用户密码 //进入mysql数据库

4、quit //退出mysql操作

5、mysqladmin -u用户名

-p旧密码 password 新密码 //更改密码

6、grant select on 数据库.* to 用户名@登录主机 identified by

“密码” //增加新用户

exemple:

例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作

(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据

库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to

test2@localhost identified by “abc”;

如果你不想test2有密码,可以再打一个命令将密码消掉。

grant

select,insert,update,delete on mydb.* to test2@localhost identified by “”;

1、列出当前用户可查看的所有数据库:SHOW DATABASES。

2、使用 LIKE

从句

,查看与 test_db “完全匹配”的数据库:SHOW DATABASES LIKE ‘test_db’。

3、使用 LIKE 从句,查看名字中“包含” test 的数据库: SHOW DATABASES LIKE ‘%test%’。

4、使用 LIKE 从句,查看名字以 db 开头的数据库: SHOW DATABASES LIKE ‘db%’。

5、使用 LIKE 从句,查看名字以 db 结尾的数据库:SHOW DATABASES LIKE ‘%db’。

6、也可以查看当前工作数据库。

7、切换到一个数据库。

8、再次查看,成功得到了当前工作数据库的名字。

ubuntu下mysql的常用命令,MySQL数据库的基本操作命令

一、mysql服务操作

0、查看数据库版本 sql-> status;

1、net start mysql //启动mysql服务

2、net stop mysql //停止mysql服务 

3、mysql

-h主机地址 -u用户名 -p用户密码 //进入mysql数据库

4、quit //退出mysql操作

5、mysqladmin -u用户名

-p旧密码 password 新密码 //更改密码

6、grant select on 数据库.* to 用户名@登录主机 identified by

“密码” //增加新用户

exemple:

例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作

(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据

库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to

test2@localhost identified by “abc”;

如果你不想test2有密码,可以再打一个命令将密码消掉。

grant

select,insert,update,delete on mydb.* to test2@localhost identified by “”;

二、数据库操作

1、show databases; //列出数据库

2、use

database_name //使用database_name数据库

3、create database data_name

//创建名为data_name的数据库

4、drop database data_name //删除一个名为data_name的数据库

三、表操作

1、show databases;//列出所有数据库

use 数据库名;

//到达某一数据库

show tables //列出所有表

create table tab_name(

id int(10)

not null auto_increment primary key,

name varchar(40),

pwd varchar(40)

) charset=gb2312; 创建一个名为tab_name的新表

2、drop table tab_name

删除名为tab_name的数据表

3、describe tab_name //显示名为tab_name的表的数据结构

4、show

columns from tab_name //同上

5、delete from tab_name //将表tab_name中的记录清空

6、select * from tab_name //显示表tab_name中的记录

7、mysqldump -uUSER -pPASSWORD

–no-data DATABASE TABLE > table.sql //复制表结构

四、修改表结构

1、 ALTER TABLE tab_name ADD PRIMARY KEY (col_name)

说明:更改表得的定义把某个栏位设为主键。

2、ALTER TABLE tab_name DROP PRIMARY KEY (col_name)

说明:把主键的定义删除

3、 alter table tab_name add col_name varchar(20);

//在tab_name表中增加一个名为col_name的字段且类型为varchar(20)

4、alter table tab_name drop

col_name //在tab_name中将col_name字段删除

5、alter table tab_name modify col_name

varchar(40) not null //修改字段属性,注若加上not null则要求原字段下没有数据

SQL

Server200下的写法是:Alter Table table_name Alter Column col_name varchar(30) not

null;

6、如何修改表名:alter table tab_name rename to new_tab_name

7、如何修改字段名:alter table tab_name change old_col new_col varchar(40);

//必须为当前字段指定数据类型等属性,否则不能修改

8、create table new_tab_name like old_tab_name

//用一个已存在的表来建新表,但不包含旧表的数据

五、数据的备份与恢复

导入外部数据文本:

1.执行外部的sql脚本

当前数据库上执行:mysql school.bbb

mysqldump -u

-p databasename > filename (备份)

mysql -u -p

databasename select database(); #使用函数database()

mysql> show tables; #列头信息中可看出当前使用的db,格式为:Tables_in_

mysql> status; #注意结果中的”Current database:”信息

查看系统中有哪些数据库,

mysql> show databases;

更换当前使用的数据库,

mysql> use db_name;

返回当前数据库下的所有表的名称

mysql> show tables;

或者直接用如下命令

mysql> show tables from db_name;

查看表结构,可使用如下命令

mysql> desc 表名;

mysql> describe 表名;

mysql> show columns from 表名;

mysql> show create table 表名;

或者,

mysql> use information_schema

mysql> select * from columns where table_name=’表名’;

15个 MySQL 菜鸟问题

问题1:你如何确定 MySQL 是否处于运行状态?

答案: Debian 上运行命令 service mysql status,在RedHat 上运行命令 service mysqld status。然后看看输出即可。

问题2:如何开启或停止 MySQL 服务?

答案:运行命令 service mysqld start 开启服务;运行命令 service mysqld stop 停止服务。

问题3:如何通过 Shell 登入 MySQL?

答案:运行命令 mysql -u root -p

问题4:如何列出所有数据库?

答案:运行命令 show databases;

问题5: 如何切换到某个数据库并在上面工作?

答案:运行命令 use database_name; 进入名为 database_name 的数据库。

问题6:如何列出某个数据库内所有表?

答案:在当前数据库运行命令 show tables;

问题7:如何获取表内所有 Field 对象的名称和类型?

答案:运行命令 describe table_name;

问题8:如何删除表?

答案:运行命令 drop table table_name;

问题9:如何删除数据库?

答案:运行命令 drop database database-name;

问题10:如何查看表内所有数据?

答案:运行命令 select * from table_name;

问题11:如何从表(比如 oc_users )中获取一个 field 对象(比如 uid)的所有数据?

答案:运行命令 select uid from oc_users;

问题12:假设你有一个名为 ‘xyz’ 的表,它存在多个字段,如 ‘createtime’ 和 ‘engine’。名为 engine 的字段由 ‘Memoty’ 和 ‘MyIsam’ 两种数值组成。如何只列出 ‘createtime’ 和 ‘engine’ 这两列并且 engine 的值为 ‘MyIsam’?

答案:运行命令 select create_time, engine from xyz where engine = ”MyIsam”;

问题13:如何列出表 ‘xrt’ 内 name 域值为 ‘tecmint’,web_address 域值为 ‘tecmint.com’ 的所有数据?

答案:运行命令 select * from xrt where name = “tecmint” and web_address = “tecmint.com”;

问题14:如何列出表 ‘xrt’ 内 name 域值不为 ‘tecmint’,web_address 域值为 ‘tecmint.com’ 的所有数据?

答案:运行命令 select * from xrt where name != “tecmint” and web_address = “tecmint.com”;

问题15:如何知道表内行数?

答案:运行命令 select count(*) from table_name;

ubuntu下mysql的常用命令,MySQL数据库的基本操作命令

一、mysql服务操作

0、查看数据库版本 sql-> status;

1、net start mysql //启动mysql服务

2、net stop mysql //停止mysql服务 

3、mysql

-h主机地址 -u用户名 -p用户密码 //进入mysql数据库

4、quit //退出mysql操作

5、mysqladmin -u用户名

-p旧密码 password 新密码 //更改密码

6、grant select on 数据库.* to 用户名@登录主机 identified by

“密码” //增加新用户

exemple:

例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作

(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据

库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to

test2@localhost identified by “abc”;

如果你不想test2有密码,可以再打一个命令将密码消掉。

grant

select,insert,update,delete on mydb.* to test2@localhost identified by “”;

二、数据库操作

1、show databases; //列出数据库

2、use

database_name //使用database_name数据库

3、create database data_name

//创建名为data_name的数据库

4、drop database data_name //删除一个名为data_name的数据库

三、表操作

1、show databases;//列出所有数据库

use 数据库名;

//到达某一数据库

show tables //列出所有表

create table tab_name(

id int(10)

not null auto_increment primary key,

name varchar(40),

pwd varchar(40)

) charset=gb2312; 创建一个名为tab_name的新表

2、drop table tab_name

删除名为tab_name的数据表

3、describe tab_name //显示名为tab_name的表的数据结构

4、show

columns from tab_name //同上

5、delete from tab_name //将表tab_name中的记录清空

6、select * from tab_name //显示表tab_name中的记录

7、mysqldump -uUSER -pPASSWORD

–no-data DATABASE TABLE > table.sql //复制表结构

四、修改表结构

1、 ALTER TABLE tab_name ADD PRIMARY KEY (col_name)

说明:更改表得的定义把某个栏位设为主键。

2、ALTER TABLE tab_name DROP PRIMARY KEY (col_name)

说明:把主键的定义删除

3、 alter table tab_name add col_name varchar(20);

//在tab_name表中增加一个名为col_name的字段且类型为varchar(20)

4、alter table tab_name drop

col_name //在tab_name中将col_name字段删除

5、alter table tab_name modify col_name

varchar(40) not null //修改字段属性,注若加上not null则要求原字段下没有数据

SQL

Server200下的写法是:Alter Table table_name Alter Column col_name varchar(30) not

null;

6、如何修改表名:alter table tab_name rename to new_tab_name

7、如何修改字段名:alter table tab_name change old_col new_col varchar(40);

//必须为当前字段指定数据类型等属性,否则不能修改

8、create table new_tab_name like old_tab_name

//用一个已存在的表来建新表,但不包含旧表的数据

五、数据的备份与恢复

导入外部数据文本:

1.执行外部的sql脚本

当前数据库上执行:mysql school.bbb

mysqldump -u

-p databasename > filename (备份)

mysql -u -p

databasename 关于mysql查看数据库结构命令的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » MySQL查看数据库结构:常用的结构查看命令 (mysql查看数据库结构命令)