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

MySQL创建Mastertbl表时出现1064语法错误,求解决方案

问题排查与修正

错误原因分析

  1. double类型语法错误:MySQL/MariaDB中double类型的声明格式为double(M, D),其中M代表总位数(整数部分+小数部分),D代表小数部分的位数。你仅写了double(225),缺少小数位数参数,这是触发1064语法错误的核心原因。
  2. 主键字段的冗余约束:PRIMARY KEY约束默认隐含NOT NULL属性,无需额外声明NOT NULL,虽不会触发错误,但属于冗余写法。

修正后的SQL语句

CREATE TABLE Mastertbl(
    mid int(11) PRIMARY KEY AUTO_INCREMENT,
    speciesName varchar(225) NOT NULL,
    localName varchar(225) NOT NULL,
    familyName varchar(225) NOT NULL,
    pila int(11) NOT NULL,
    areaNumber int(11) NOT NULL,
    plotNumber int(11) NOT NULL,
    Longitude double(15, 8) NOT NULL,
    Latitude double(15, 8) NOT NULL
);

关键修改说明

  • 移除mid字段的NOT NULL约束,保留PRIMARY KEY AUTO_INCREMENT即可。
  • 将double(225)修改为double(15, 8)(可根据实际经纬度精度需求调整M和D的值,15位总长度+8位小数足以满足大多数地理坐标场景)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.18 23:15:42