带有 (n) 的 Mysql UNIQUE 表示法

标签 mysql sql

我没有得到 MySQL 表的 (200) 部分

CREATE TABLE `file_names` (
`id` int(11) NOT NULL auto_increment,
`file_name` text NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `file_name` (`file_name`(200))
)

(200) 部分有什么作用?

你知道其他使用这种表示法的数据库吗?

最佳答案

这是索引的长度选项。它仅使用 file_name 的前 200 个字符来验证唯一性。

它记录在文档的CREATE INDEX 部分,即here .

类型的选择很奇怪。 text 对于文件名来说似乎太长了。而且,文件名通常在名称的末尾有所不同,而不是在开头。

关于带有 (n) 的 Mysql UNIQUE 表示法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34721440/

相关文章:

mysql - 使用 unix 套接字时,postfix 无法连接 mysql 表。 postmap 成功了吗?

SQL查询以计算每月总计作为一列

Mysql 查询 rand() 并排序

mysql - 在有序选择中选择前 3 行

php - 在 MySQL 中为 datetime 添加秒数

php - 我想创建一个 php 语句来同时检查 2 个表

sql - 在表中查找缺失的时间间隔

MYSQL - 由于子查询,结果正常吗?

php - 使用 mysql 和 php 搜索除日期字段之外的整个表

php - 使用 $wpdb 和 get_query_var 从 Wordpress DB 获取信息