如何在 MySQL 中获取表的主键?
mysqlmysqli database更新于 2024/4/11 8:12:17
要获取表的主键,可以使用 show 命令。语法如下 −
SHOW INDEX FROM yourDatebaseName.yourTableName WHERE Key_name = 'PRIMARY';
假设,我们有一个包含两个主键的表;其中一个是"Id",另一个是"RollNum"。表的查询如下 −
mysql> create table TwoOrMorePrimary
−> (
−> Id int,
−> Name varchar(200),
−> RollNum int
−> ,
−> Primary key(Id,Age)
−> );
Query OK, 0 rows affected (0.85 sec)
应用上述语法获取表的主键。查询如下−
mysql> SHOW INDEX FROM business.TwoOrMorePrimary
−> WHERE Key_name = 'PRIMARY';
以下是输出 −
+------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+------------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | Visible | Expression |
+------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+------------+
| twoormoreprimary | 0 | PRIMARY | 1 | Id | A | 0 | NULL | NULL | | BTREE | | | YES | NULL |
| twoormoreprimary | 0 | PRIMARY | 2 | RollNum | A | 0 | NULL | NULL | | BTREE | | | YES | NULL |
+------------------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+---------+------------+
2 rows in set (0.12 sec)
相关文章
SQL 中简单视图和复杂视图的区别
从 MySQL 数据库中获取具有特定列(例如 xyz)的所有表?
将 MySQL 时间戳转换为 UNIX 时间戳?
如何在 MySQL 数据库中用 & 符号替换 &?
根据 MySQL 中对应的重复 VARCHAR 值求平均值
我们可以执行 MySQL UPDATE 而不更改表中的任何内容吗?
在 MySQL 中 select @@identity 起什么作用?
MySQL 查询从重复列值中获取最大对应值
扩展 MySQL 中 varchar 字段的大小是否会影响其中的数据?
在 MySQL 中对列表进行排序并在列末尾显示固定结果?
有用资源
mysql 参考教程 - 该教程包含有关 mysql 的更多信息:https://www.w3schools.cn/mysql/
打印
下一节:如何在 MySQL 中实现三元条件运算符? ❯❮ 上一节:MySQL 中两个或多个字段的最大值?