gpt4 book ai didi

mysql - SQL 错误 - 在没有 key 长度的 key 规范中使用了 BLOB/TEXT 列 'url'

转载 作者:行者123 更新时间:2023-11-29 07:24:37 28 4
gpt4 key购买 nike

我正在尝试创建一个表,但出现此错误:

SQL error - BLOB/TEXT column 'url' used in key specification without a key length

这是我正在使用的 SQL

CREATE TABLE recipes (
url TEXT NOT NULL,
name TEXT NOT NULL,
pic_url TEXT NOT NULL,
vegetarian INT NOT NULL,
ingredients TEXT NOT NULL,
time INT NOT NULL,
rating FLOAT NOT NULL,
ratings_no INT NOT NULL,
keywords TEXT NOT NULL,
UNIQUE (
url
)
);

有谁知道我该如何解决这个问题?谢谢。

最佳答案

您只能索引 TEXT 或 BLOB 列的第一列。

UNIQUE (url(512)) 

将实现这一目的,在列的前 512 个字符上创建索引。

但是除非绝对必要,否则您应该避免使用TEXT 列,并且几乎不要使用索引。它们进入 DBMS 中单独分配的对象,这使得插入、更新和查询变慢。 VARCHAR(2048) or a datatype like that will perform better .唯一索引之类的东西可以正常工作。请阅读这个。 https://dev.mysql.com/doc/refman/8.0/en/blob.html

注意 URL 最有效 when limited to about 2000 characters in length .

关于mysql - SQL 错误 - 在没有 key 长度的 key 规范中使用了 BLOB/TEXT 列 'url',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54524665/

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