首先上源码

protected String changeTable(String sql) {
ExceptionUtils.throwMpe(null == tableNameHandler, "Please implement TableNameHandler processing logic");
TableNameParser parser = new TableNameParser(sql);//解析出所有语句
List<TableNameParser.SqlToken> names = new ArrayList<>();
parser.accept(names::add);根据指定关键词获取表名
StringBuilder builder = new StringBuilder();
int last = 0;
for (TableNameParser.SqlToken name : names) {
int start = name.getStart();
if (start != last) {
builder.append(sql, last, start);
builder.append(tableNameHandler.dynamicTableName(sql, name.getValue()));
}
last = name.getEnd();
}
if (last != sql.length()) {
builder.append(sql.substring(last));
}
if (hook != null) {
hook.run();
}
return builder.toString();
}

仅支持一下关键词

所以如果使用动态表名替换功能时候使用:INSERT IGNORE  类似这样的语句 IGNORE  无法被识别,所以后面跟着的表名也无法识别

最新文章

  1. 利用snowfall.jquery.js实现爱心满屏飞
  2. INSERT INTO .. ON DUPLICATE KEY更新多行记录
  3. C# 特性详解(上)
  4. iOS 全局竖屏 单个viewcontroller点击按钮支持横屏
  5. SQL 存储过程(学生,课程表,选修表)
  6. li浮动引起ul高度坍陷的解决方法
  7. 关于eclipse创建Maven项目创建的问题
  8. webmagic保存数据
  9. SharePoint 2016 vs部署报错:无法加载功能xxx未能加载文件或程序集xxx或它的某一个依赖项。系统找不到指定的文件
  10. Haskell语言学习笔记(89)Unicode UTF8
  11. Android使用binder访问service的方式(一)
  12. 轻量级Modal模态框插件cta.js
  13. Codeforces Round #298 (Div. 2) C. Polycarpus&#39; Dice 数学
  14. 使用jquery加载部分视图02-使用$.ajax()
  15. 1 - Reverse Integer
  16. Oracle PL/SQL编程之变量
  17. DataStage 服务启动
  18. ASP.NET 中对大文件上传的简单处理
  19. 【洛谷P1107】 [BJWC2008]雷涛的小猫
  20. Codeforces Round #459 (Div. 2)

热门文章

  1. 1.初识 Django
  2. javaEE(常用API集合&lt;Collection和Map&gt;)
  3. 一个更适合Java初学者的轻量级开发工具:BlueJ
  4. 轻量级CI/CD发布部署环境搭建及使用_01_基本介绍
  5. rlwrap解决opengauss,pg,oracle上下左右及回退乱码
  6. DesignPatternPrinciple-设计模式原则
  7. 一个方便IO单元测试的C#扩展库
  8. CF1768F 题解
  9. .net core 3.1 上传大文件报错413 Payload Too Large
  10. VMware 关于mininet