gpt4 book ai didi

mysql - MySQL 中的 CREATE TABLE KEY-Naming 是什么意思?

转载 作者:行者123 更新时间:2023-11-29 04:34:55 24 4
gpt4 key购买 nike

我找到了下面的创建语句,有两个问题。

CREATE TABLE signups (
signup_id bigint(20) NOT NULL auto_increment,
domain varchar(200) NOT NULL default '',
path varchar(100) NOT NULL default '',
activation_key varchar(50) NOT NULL default '',
PRIMARY KEY (signup_id),
KEY activation_key (activation_key),
KEY domain_path (domain(140),path(51))
) $charset_collate;"

为什么我必须将 KEY 命名为 activation_key?它有意义吗?我可以在进一步的声明中访问该名称吗?还是纯语法?

如果我这样命名它是什么意思:

KEY domain_path(域(140),路径(51))

我知道我这里有一把双 key ,但是 140 和 51 在这里做什么?

最佳答案

每个索引都有一个名称。它被 MySQL 用于某些命令,因此索引可以被引用,例如当您更改表和删除一个键时 - 您必须指定要删除的哪个键,这是通过提供它的名称来完成的.

始终使用有意义的名称。我们经常跳过键名,因此 MySQL 会默认为它们命名,这些名称由索引覆盖的列组成。

KEY domain_path (domain(140),path(51)) 表示“从域列中最多取 140 个字符,然后从路径列中取最多 51 个字符并将其添加到索引结构中".

You can read more about this syntax in the manual , 它在第一个例子中被提到。

关于mysql - MySQL 中的 CREATE TABLE KEY-Naming 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45614056/

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