rank 是 MySQL 中的保留关键字,因此直接使用 rank 作为列名会引发语法问题,用反引号 (``) 包裹字段名

[42000][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 
'rank INT(3) DEFAULT 0, remark VARCHAR(500), ' at line 18
CREATE TABLE admin (
  id INTEGER NOT NULL AUTO_INCREMENT,
  created_date DATETIME,
  last_modified_date DATETIME,
  avatar VARCHAR(1000),
  display INT(1) DEFAULT 0,
  first_login INT(1) DEFAULT 1,
  inviter_id INTEGER,
  last_login_time DATETIME,
  level INT(3) DEFAULT 0,
  locked_date DATETIME,
  mail VARCHAR(255),
  nickname VARCHAR(50),
  password VARCHAR(100) NOT NULL,
  password_attempt_count INT(3) DEFAULT 0,
  phone VARCHAR(20),
  pid INTEGER,
  `rank` INT(3) DEFAULT 0,  -- 使用反引号转义保留关键字
  remark VARCHAR(500),
  score INT(11) DEFAULT 0,
  status INT(1) DEFAULT 1,
  update_password_time DATETIME,
  username VARCHAR(50) NOT NULL,
  we_chat_open_id VARCHAR(150),
  PRIMARY KEY (id)
) ENGINE=MyISAM;

解决这个问题的方式是对 rank 字段进行转义,用反引号 (``) 包裹字段名,以避免与保留关键字冲突。
在这里插入图片描述
文心一言、豆包、智谱清言、ChatGPT回答正确。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值