找回密码
 立即注册
CeraNetworksBGVM服务器主机交流IP归属甄别会员请立即修改密码
查看: 40|回复: 4

这段MYSQL有啥错误。无法运行

[复制链接]

6

主题

26

回帖

116

积分

注册会员

积分
116
发表于 2023-3-28 18:21:20 | 显示全部楼层 |阅读模式
-- 用户信息
CREATE TABLE IF NOT EXISTS  `user`(
    `id` bigint(20) UNSIGNED NOT NULL  AUTO_INCREMENT,
    `studentName` varchar (20) NOT NULL COMMENT '用户名',
    `bookArr` longtext NOT NULL COMMENT '学生预定的书籍'
    PRIMARY KEY (`id`)
)ENGINE =InnoDB DEFAULT charset =utf8 COMMENT='用户信息';



----------------------------------------------------------------------------------------------------------------------------------------------------------------------------



错误

静态分析:

分析时发现3个错误。

    应该是有逗号或结束括号。 (near "(" at position 225)
    不应出现的开始声明。 (near "`id`" at position 226)
    无法识别的声明形式。 (near "ENGINE" at position 234)

SQL 查询: 复制

-- 用户信息 CREATE TABLE IF NOT EXISTS `user`( `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT, `studentName` varchar (20) NOT NULL COMMENT '用户名', `bookArr` longtext NOT NULL COMMENT '学生预定的书籍' PRIMARY KEY (`id`) )ENGINE =InnoDB DEFAULT charset =utf8 COMMENT='用户信息';

MySQL 返回: 文档
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`id`)
)ENGINE =InnoDB DEFAULT charset =utf8 COMMENT='用户信息'' at line 6



求帮忙改正
回复

使用道具 举报

62

主题

786

回帖

2764

积分

金牌会员

积分
2764
发表于 2023-3-28 18:24:49 | 显示全部楼层
主键定义前一行少个逗号
回复

使用道具 举报

6

主题

137

回帖

340

积分

中级会员

积分
340
发表于 2023-3-28 18:25:33 | 显示全部楼层
[ol]
  • -- 用户信息
  • CREATE TABLE IF NOT EXISTS  `user`(
  •     `id` bigint(20) UNSIGNED NOT NULL  AUTO_INCREMENT,
  •     `studentName` varchar (20) NOT NULL COMMENT '用户名',
  •     `bookArr` longtext NOT NULL COMMENT '学生预定的书籍',
  •     PRIMARY KEY (`id`)
  • )ENGINE =InnoDB DEFAULT charset =utf8 COMMENT='用户信息';
  • [/ol]复制代码
  • 回复

    使用道具 举报

    6

    主题

    27

    回帖

    106

    积分

    注册会员

    积分
    106
    发表于 2023-3-28 18:27:09 | 显示全部楼层
    "


    上面是chatgpt的答案
    回复

    使用道具 举报

    128

    主题

    534

    回帖

    2314

    积分

    金牌会员

    积分
    2314
    发表于 2023-3-28 18:30:05 | 显示全部楼层
    varchar (20) 中的空格会导致语法错误,正确的写法是 varchar(20),括号与类型名之间不应有空格。  longtext 后面应该加上逗号,即 longtext NOT NULL,,表示该字段不允许为空。  缺少逗号分隔符,应在 bookArr 字段的定义和上面的 studentName 字段之间加上逗号,即 bookArr longtext NOT NULL,。  改正后的语句如下:  CREATE TABLE IF NOT EXISTS `user` (   `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT,   `studentName` varchar(20) NOT NULL COMMENT '用户名',   `bookArr` longtext NOT NULL COMMENT '学生预定的书籍',   PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息';
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|HS2V主机综合交流论坛

    GMT+8, 2024-6-5 10:37 , Processed in 0.057179 second(s), 3 queries , Gzip On, Redis On.

    Powered by Discuz! X3.5

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表