mysql语法时采用了双引号““的错误问题

 更新时间:2024年10月25日 14:18:02   作者:Arenaschi  
错误原因:使用双引号定义表名和列名导致MySQL报错,应使用反引号,修改方案:将双引号改为反引号,避免语法冲突,总结:在MySQL中,正确使用反引号引用标识符,确保SQL语句符合MySQL语法规则

mysql语法时采用了双引号““错误

先展示一段sql代码

DROP TABLE IF EXISTS `xxl_job_group`;
CREATE TABLE "xxl_job_group" (
"id" int NOT NULL AUTO_INCREMENT,
"app_name" varchar(64) NOT NULL COMMENT '执行器AppName',
"title" varchar(12) NOT NULL COMMENT '执行器名称',
"address_type" tinyint NOT NULL DEFAULT '0' COMMENT '执行器地址类型:0=自动注册、1=手动录入',
"address_list" text COMMENT '执行器地址列表,多地址逗号分隔',
"update_time" datetime DEFAULT NULL,
PRIMARY KEY ("id")
);

运行mysql报错,如下:

错误原因及解决

这段错误的原因是由于你在使用MySQL语法时采用了双引号 " 来定义表名和列名,而这是 MySQL 中不被支持的方式。

MySQL 通常使用反引号 ` 来引用表名和列名,双引号通常用于字符串。

你目前的 SQL 语句更符合 PostgreSQL 或其他一些 SQL 数据库的语法,但不适用于 MySQL。

具体来说,CREATE TABLE "xxl_job_group" 应该改为 CREATE TABLE \xxl_job_group``,同样对于所有的列名也应该使用反引号。

例如:

CREATE TABLE `xxl_job_group` (
  `id` int NOT NULL AUTO_INCREMENT,
  `app_name` varchar(64) NOT NULL COMMENT '执行器AppName',
  `title` varchar(12) NOT NULL COMMENT '执行器名称',
  `address_type` tinyint NOT NULL DEFAULT '0' COMMENT '执行器地址类型:0=自动注册、1=手动录入',
  `address_list` text COMMENT '执行器地址列表,多地址逗号分隔',
  `update_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
);

这样修改之后,SQL 应该可以正常运行。

错误信息 1064 是 MySQL 中非常常见的语法错误代码,表示在指定的 SQL 语句附近检测到语法问题。

在你的 SQL 中,问题出在使用了不正确的符号来标识表和列名。

总结

  • MySQL 引号使用规则: 在 MySQL 中,应使用反引号 ` 来引用表名和列名,避免与保留字冲突或包含特殊字符。
  • 修改方案: 将所有表名和列名的双引号改为反引号。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • mysql 触发器语法与应用示例

    mysql 触发器语法与应用示例

    这篇文章主要介绍了mysql 触发器语法与应用,结合实例形式详细分析了mysql 触发器的基本语法与插入、更细、删除等相关操作技巧,需要的朋友可以参考下
    2020-05-05
  • Mysql查询语句优化技巧

    Mysql查询语句优化技巧

    这篇文章主要介绍了Mysql查询语句优化技巧的相关资料,需要的朋友可以参考下
    2016-04-04
  • 解决mysql5.6 utf8设置无效问题

    解决mysql5.6 utf8设置无效问题

    这篇文章主要介绍了mysql5.6 utf8设置无效问题,本文虽然内容不长,但是解决方法给出,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • MySql .frm数据库文件导入的问题

    MySql .frm数据库文件导入的问题

    手头有.frm 文件,怎样导入数据库啊?
    2009-07-07
  • Mysql存储引擎详解

    Mysql存储引擎详解

    存储引擎其实就是如何实现存储数据,如何为存储的数据建立索引以及如何更新,查询数据等技术实现的方法。本文我们来详细探讨下MySQL中的几个存储引擎(MyISAM、InnoDB、archive、MERGE)的相关知识
    2016-12-12
  • 详解MySQL事务的隔离级别与MVCC

    详解MySQL事务的隔离级别与MVCC

    这篇文章主要介绍了MySQL事务的隔离级别与MVCC的相关资料,帮助大家更好的理解和学习使用MySQL,感兴趣的朋友可以了解下
    2021-04-04
  • Linux系统每日定时备份mysql数据的方法步骤

    Linux系统每日定时备份mysql数据的方法步骤

    这篇文章主要介绍了Linux系统每日定时备份mysql数据的方法步骤,包括创建文件夹、编写脚本、设置定时任务和测试脚本,详细步骤涵盖从文件夹创建到脚本执行的全过程,帮助用户实现数据库的自动备份,需要的朋友可以参考下
    2024-11-11
  • MySQL JDBC连接SSL配置问题

    MySQL JDBC连接SSL配置问题

    本文主要介绍了MySQL JDBC连接SSL配置问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2026-04-04
  • MYSQL初始化数据目录的实现步骤

    MYSQL初始化数据目录的实现步骤

    本文主要介绍了MYSQL初始化数据目录的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • MSQL中DATETIME或TIMESTAMP的区别小结

    MSQL中DATETIME或TIMESTAMP的区别小结

    MySQL中的 DATETIME 和 TIMESTAMP 类型都用于存储日期和时间信息,本文主要介绍了MSQL中DATETIME或TIMESTAMP的区别小结,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03

最新评论