开发者社区> 问答> 正文

MySQL delete...from...join...语句解析异常

druid:1.1.8

String sql = "delete a.* from teacher_1 a join teacher_2 b on a.teacher_id = b.teacher_id where a.day < b.day";

解析结果: Tables : {teacher_1=Delete, teacher_2=Delete, a.*=Delete}

存在的问题:

1)不应该解析出a.*;

2)表teacher_2视为Delete不合适吧;

原提问者GitHub用户dingqianlong

展开
收起
山海行 2023-07-05 20:19:52 156 0
2 条回答
写回答
取消 提交回答
  • 北京阿里云ACE会长

    可能是由于以下原因之一:

    语法错误:如果您的DELETE...FROM...JOIN...语句中存在语法错误,MySQL解析器将无法正确解析该语句。请检查您的语法并确保其正确无误。您可以尝试在MySQL的命令行或客户端中执行该语句以查看更详细的错误信息。

    表或列不存在:如果您的DELETE...FROM...JOIN...语句中引用了不存在的表或列,MySQL解析器将无法正确解析该语句。请确保您的表和列名称正确无误,并且这些表和列存在于您的数据库中。

    权限不足:如果您尝试执行DELETE...FROM...JOIN...语句时没有足够的权限,MySQL解析器将无法正确解析该语句。请确保您有足够的权限来执行该语句,并且您已经授予了必要的权限。

    MySQL版本问题:某些MySQL版本可能对DELETE...FROM...JOIN...语句的支持不同。如果您的MySQL版本较旧,可能不支持该语句的某些特定形式。请检查您的MySQL版本并确保其支持您正在使用的DELETE...FROM...JOIN...语句。

    2023-07-30 14:35:08
    赞同 展开评论 打赏
  • 问题已修复,请用新版本 https://github.com/alibaba/druid/releases/tag/1.1.14

    原回答者GitHub用户wenshao

    2023-07-06 11:22:19
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
神龙云服务器产品及技术深度解析 立即下载
弹性创造价值:基于ECS的最佳性价比实践解析 立即下载
又快又稳:阿里云下一代虚拟交换机解析 立即下载

相关镜像