首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL 8的这个语法有什么问题吗?它在5.7中运行得很好

MySQL 8的这个语法有什么问题吗?它在5.7中运行得很好
EN

Stack Overflow用户
提问于 2019-01-31 04:27:10
回答 1查看 154关注 0票数 0

我正在安装运行此查询的旧vBulletin版本3.x,

代码语言:javascript
复制
CREATE TABLE usertextfield (
    userid INT UNSIGNED NOT NULL DEFAULT '0',
    subfolders MEDIUMTEXT,
    pmfolders MEDIUMTEXT,
    buddylist MEDIUMTEXT,
    ignorelist MEDIUMTEXT,
    signature MEDIUMTEXT,
    searchprefs MEDIUMTEXT,
    rank MEDIUMTEXT,
    PRIMARY KEY (userid)
);

这对于较早的MySQL版本总是很好,但是MySQL 8会出现语法错误。#1064 -您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以获得正确的语法。

代码语言:javascript
复制
'rank MEDIUMTEXT,
        PRIMARY (userid)
    )'

在第9行,这个几乎相同的查询执行得很好,并创建了表。

代码语言:javascript
复制
CREATE TABLE administrator (
    userid INT UNSIGNED NOT NULL DEFAULT '0',
    adminpermissions INT UNSIGNED NOT NULL DEFAULT '0',
    navprefs MEDIUMTEXT,
    cssprefs VARCHAR(250) NOT NULL DEFAULT '',
    notes MEDIUMTEXT,
    dismissednews TEXT,
    languageid SMALLINT UNSIGNED NOT NULL DEFAULT '0',
    PRIMARY KEY (userid)
)

你能告诉我什么改变了吗?我该怎么办?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-31 04:29:18

RANK在MySQL 8.0.2中成为保留关键字。您应该重命名该列,或者用‘mark’包围它。

代码语言:javascript
复制
`rank` MEDIUMTEXT,
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54453279

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档