gpt4 book ai didi

mysql - DESC 命令和其中的键列

转载 作者:行者123 更新时间:2023-11-29 07:58:01 31 4
gpt4 key购买 nike

我在数据库中创建了一个表并添加了一些约束。当我在表上使用 DESC 关键字时,根据我放置的约束,“Key”列会更改其记录。

这是表定义:

CREATE TABLE t(
sif INT,
sif2 INT NOT NULL,
sif3 INT UNIQUE,
sif4 INT NOT NULL UNIQUE
);

这是 DESC 结果:

    mysql> desc t;    +-------+---------+------+-----+---------+-------+    | Field | Type    | Null | Key | Default | Extra |    +-------+---------+------+-----+---------+-------+    | sif   | int(11) | YES  |     | NULL    |       |    | sif2  | int(11) | NO   |     | NULL    |       |    | sif3  | int(11) | YES  | UNI | NULL    |       |    | sif4  | int(11) | NO   | PRI | NULL    |       |    +-------+---------+------+-----+---------+-------+    4 rows in set (0.01 sec)

为什么我的列 sif4 获得键值 PRI?我从未提到过主键定义,但 DESC 关键字显示该列已设置为主键。

最佳答案

DESC tDESCRIBE t 相当于 SHOW COLUMNS FROM t。在 SHOW COLUMNS 命令的输出中,如果唯一索引不能包含空值并且表中没有主键,则该索引可能会显示为 PRI

在您的情况下,sif4 列符合资格,因为它声明为

sif4 INT NOT NULL UNIQUE

来自documentation :

A UNIQUE index may be displayed as PRI if it cannot contain NULL values and there is no PRIMARY KEY in the table. A UNIQUE index may display as MUL if several columns form a composite UNIQUE index; although the combination of the columns is unique, each column can still hold multiple occurrences of a given value.

关于mysql - DESC 命令和其中的键列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24593894/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com