声明VARCHAR
大小对性能有意义吗?是否有任何区别(速度)VARCHAR(50)
和VARCHAR(255)
?或者定义长度是逻辑/设计约束?
其中一个应用程序服务器在我的内部创建数据库,mysql
但是当以下 create table 命令被执行时
CREATE TABLE ofRoster (
rosterID BIGINT NOT NULL,
username VARCHAR(64) NOT NULL,
jid VARCHAR(1024) NOT NULL,
sub TINYINT NOT NULL,
ask TINYINT NOT NULL,
recv TINYINT NOT NULL,
nick VARCHAR(255),
PRIMARY KEY (rosterID),
INDEX ofRoster_unameid_idx (username),
INDEX ofRoster_jid_idx (jid)
)
Run Code Online (Sandbox Code Playgroud)
我收到以下错误
ERROR 1071 (42000): Specified key was too long; max key length is 1000 bytes
Run Code Online (Sandbox Code Playgroud)
我已将我的默认引擎设置为,MyISAM
因为我遇到以下错误InnoDB
specified key was too long max key length is 767 bytes
Run Code Online (Sandbox Code Playgroud)
我目前的引擎如下
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine …
Run Code Online (Sandbox Code Playgroud)