- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 JSqlParser 3.0,我的查询是 SELECT * from [dev-testdb].dbo.EMPLOYEES
。我正在尝试删除 [] 字符,因为 JSqlParser 3.0 版本不支持这些字符。我猜 1.x 可以,但我必须使用 3.0。
删除括号后,我的查询看起来像 SELECT * from dev-testdb.dbo.EMPLOYEES
。我正在调试我的项目并使用此命令
final Statement statement = CCJSqlParserUtil.parse(sql);
我发现了这个异常
net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "-" "-"
at line 1, column 18.
使用 JSqlParser 解析时如何修复这 3 个字符?
最佳答案
这不是JSqlParser的问题,而是它的演变的问题。 :)
Bracketquotation 默认关闭,以支持各种数组语法,在大多数情况下也使用方括号。此更改是在 JSqlParser 3.0 中引入的。
The array parsing is the default behaviour. Square bracket quotation has to be enabled using a parser flag (CCJSqlParser.withSquareBracketQuotation).
这里是讨论:https://github.com/JSQLParser/JSqlParser/issues/677 .
要再次激活此括号引用,请使用以下内容:
CCJSqlParserUtil.parse("select * from [mytable]", parser -> parser.withSquareBracketQuotation(true));
lambda 表达式用于以某种方式修改所使用的解析器配置。
关于java - 如何在 JSqlParser 上处理 '[ ] -' 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59135053/
我想从查询和子查询中获取所有选择的项目 根据此链接,https://stackoverflow.com/a/30505741/8249665我可以从主查询中获取选定的项目。 对于这样的子查询 - “S
以下字符串: x=92 and y=29 产生有效的输出:x=92 AND y=29并且它与CCJSqlParserUtil.parseCondExpression一起工作正常,但它不应该抛出以下异常
假设我有一个格式表达式 a>10 and b>20 and c>30 我想得到如下的表达式列表 a>10 b>20 c>30 如果我使用表达式访问者模式,对于 AndExpression 访问者,我写
我刚刚开始探索 JSqlparser。根据我的理解,我修改了 TablesNamesFinder 以提取列和表,它工作正常但有一个非常小的问题。 @Override public void visit
我想向我的 sql 添加新条件。例如如果查询是; SELECT EMP_ID, FIRST_NAME FROM EMPLOYEES; 我可以用这个代码添加新的 where 原因; @Override
我正在尝试找到从使用 JSQLParser 解析的查询中删除表达式(例如条件)的最简单方法。 假设我有以下查询(这里没有真正的逻辑): select a,b,c from table where a
我将 jar jsqlparser-0.7.0 添加到我的 Netbeans IDE(右键单击库/添加 Jar 文件)但我仍然无法使用它的包。可能是什么原因 。该库创建于 2011 年,可能是 JDK
当使用 JSqlParser 解析查询时,在某些情况下,JSqlParser 似乎决定生成 SubJoin 对象作为 FromItem,而不是常规的 Table/Join 对象。 您能帮我了解这种情况
我正在编写一个 SQL 查询评估器,并使用 JSQLParser 来解析查询。现在看来(并且此链接 http://sourceforge.net/p/jsqlparser/feature-reques
我已经开始使用 JSqlParser,我可以解析 Where 子句,但我无法进一步使用它。 JSqlParser github link 事实上,我已经尝试过重写访问方法,但不明白如何实现我的目标。
我想使用 JSqlParser 完整而简洁地解析 SQL where 子句。很容易将它解析成像这样的单独的条件语句 String whereClause = "a=3 AND b=4 AND c=5"
JSqlParser 中是否有任何选项可以解析查询,例如 create table public.sales1 as (select * from public.sales) 最佳答案 我假设您使用旧
我正在使用 JsqlParser 0.8.0。 我有以下字符串: String sql = "SELECT table alias FROM table;"; CCJSqlParserManager
我想知道是否可以使用 jsqlparser 将表达式添加到 sql 查询中。例如,我想在 sql 语句中添加一个列和一个值: 原始查询:“INSERT INTO frontend(in_reply_t
我正在尝试使用 JSqlParser 在 SQL 查询中查找 SQL 对象( token ?)的位置(行就足够了)。 例如,在查询中: SELECT a FROM table WHERE a = 1
我想获取 from 子句中的所有子查询,但是当我使用时 FromItem fromItems = plainSelect.getFromItem(); 它只是检索 from 子句中的第一个子查询以及
如何使用 JSQLParser 区分函数调用和字段名称? 例如,查询 SELECT COUNT(*) FROM db.table 将 COUNT(*) 解析为字段名称而不是函数调用。 我需要做什么来更
我正在使用 JSqlParser 3.0,我的查询是 SELECT * from [dev-testdb].dbo.EMPLOYEES 。我正在尝试删除 [] 字符,因为 JSqlParser 3.0
【现象】 2022-07-25 11:59:51.707 [http-nio-7006-exec-3] ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - [log
我是一名优秀的程序员,十分优秀!