You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

创建含DOUBLE字段的MySQL表时触发error #1064错误求助

MySQL建表1064错误修复方案

错误点说明

  • 错误1:YEAR(4)写法不被支持,MySQL 5.7.5版本起已经移除YEAR类型的长度参数,直接使用YEAR即可。
  • 错误2:DOUBLE(20)语法不合法,DOUBLE类型若指定精度需要传入总位数、小数位两个参数,仅传一个参数会触发语法错误,评分场景建议直接用DOUBLE或者指定为DOUBLE(5,2)(支持最高999.99的评分,满足绝大多数使用需求)。
  • 错误3:整数类型主键无需指定索引长度,PRIMARY KEY(mID(20))中的(20)属于冗余且不被支持的写法,直接保留字段名即可。

修正后的完整建表代码

CREATE TABLE `RENRMyLUoX`.`movie`(
    `mID` INT NOT NULL,
    `title` VARCHAR(50) NULL DEFAULT NULL,
    `relYear` YEAR NULL DEFAULT NULL,
    `category` VARCHAR(50) NULL DEFAULT NULL,
    `runTime` INT NOT NULL,
    `studioName` VARCHAR(50) NULL DEFAULT NULL,
    `description` VARCHAR(50) NULL DEFAULT NULL,
    `rating` DOUBLE NULL DEFAULT NULL,
    PRIMARY KEY(`mID`)
) ENGINE = InnoDB CHARSET = latin1 COLLATE latin1_bin;

可选优化建议

  • 若使用的是MySQL 8.0及以上版本,INT类型后的显示宽度参数已被废弃,可以直接写INT代替INT(20)
  • 电影描述字段description通常内容较长,建议将长度从50调整为更大的值比如VARCHAR(2000)或者TEXT类型
  • 字符集如果需要支持中文的话,建议调整为utf8mb4替代latin1

内容的提问来源于stack exchange,提问作者superKade

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 08:57:01