获取有关 MySQL 数据库和表的信息
mysqlmysqli database
用户可能会忘记数据库或表的名称、表的结构或列的名称。这个问题可以使用 MySQL 来解决,因为它支持许多语句,这些语句提供有关它所支持的数据库和表的信息。
‘SHOW DATABASES’ 查询可用于列出服务器管理的所有数据库。要查看当前正在使用的数据库,请使用‘DATABASE()’ 函数。
让我们在下面的部分中了解这个查询 −
查询
mysql> SELECT DATABASE();
输出
+---------------------+ | DATABASE() | +---------------------+ | databaseInUse | +---------------------+
如果没有选择数据库,则输出"NULL"。
要查看默认数据库包含哪些表,可以使用以下查询 −
查询
mysql> SHOW TABLES;
输出
+-----------------------------------+ | Tables_in_databaseInUse | +-----------------------------------+ | val1 | | val1 | +-----------------------------------+
上述查询产生的输出中的列名为‘Tables_in_databaseInUse’,其中databaseInUse是正在使用/选择的数据库的名称。
如果用户想要了解有关表结构的更多信息,可以使用‘DESCRIBE’语句。它将显示有关每个表的列的信息−
查询
mysql> DESCRIBE pet;
输出
+---------+-------------+-------+------+-----------+--------+ | Field | Type | Null | Key | Default | Extra | +---------+-------------+-------+------+-----------+--------+ | name | varchar(20) | YES | | NULL | | | owner | varchar(20) | YES | | NULL | | +---------+-------------+-------+------+-----------+--------+
该字段表示列名,"Type"表示列的数据类型,"NULL"表示该列是否可以包含 NULL 值,"Key"表示该列是否被索引,"Default"指定该列的默认值。"Extra"显示有关列的特殊信息。如果使用"AUTO_INCREMENT"选项创建列,则值为"auto_increment",而不是空。