Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 25991|Ответ: 1

[Источник] Запрос по пагинации MyBatis Вызван: net.sf.jsqlparser.parser.ParseException: ...

[Скопировать ссылку]
Опубликовано 2021-8-20 13:22:31 | | |
При использовании MyBatis plus для запроса на страницирование ошибка следующая:

Причина: org.apache.ibatis.exceptions.PersistenceException:
### База данных по запросам ошибок.  Cause: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Failed to processing, Error SQL: itsvse
### Cause: com.baomidou.mybatisplus.core.exceptions.MybatisPlusException: Failed to processing, Error SQL: itsvse
        на сайте org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)
        на org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:153)
        at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:145)
        на сайте org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:140)
        на sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        на sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        на sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        на java.lang.reflect.Method.invoke(Method.java:498)
        на сайте org.mybatis.spring.SqlSessionTemplate$SqlSessionInterceptor.invoke(SqlSessionTemplate.java:427)
        ... 112 обычных кадров опущены
Причина: com.baomidou.mybatisplus.core.exceptions.MybatisPlusExceptions: Не удалось обработать, Error SQL: select * from (

                xxx

        at com.baomidou.mybatisplus.core.toolkit.ExceptionUtils.mpe(ExceptionUtils.java:39)
        at com.baomidou.mybatisplus.extension.parser.JsqlParserSupport.parserSingle(JsqlParserSupport.java:52)
        at com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor.beforeQuery(TenantLineInnerInterceptor.java:65)
        на com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor.intercept(MybatisPlusInterceptor.java:78)
        на org.apache.ibatis.plugin.Plugin.invoke(Plugin.java:62)
        на com.sun.proxy.$Proxy 260.query(Неизвестный источник)
        at org.apache.ibatis.session.defaults.DefaultSqlSession.selectList(DefaultSqlSession.java:151)
        ... 119 распространённых кадров пропущено
Причина: net.sf.jsqlparser.parser.parser.ParseException: Столкнулся с неожиданным токеном: "select" <K_SELECT>
    на строке 4, колонка 4.

Ожидал одного из:

    "!"
    "("
    "+"
    "-"
    "?"
    "@"
    "@@"
    «МОТОР»
    «ЛЮБОЙ»
    «БАЙТ»
    «КАСКАД»
    «КЕЙС»
    «АКТЁРЫ»
    «ПЕРЕМЕНЫ»
    «ЧАР»
    «ХАРАКТЕР»
    «КОЛОНКА»
    «КОЛОННЫ»
    «КОММЕНТАРИЙ»
    "ОБЯДЬТЕСЬ"
    "СОЗДАТЬ"
    «ТЕКУЩИЙ»
    «ЦИКЛ»
    "DESC"
    «ОПИСАТЬ»
    "ОТКЛЮЧИТЬ"
    «DIV»
    "ДО"
    «ДВОЙНОЙ»
    «ДУБЛИКАТ»
    «СОДЕЙСТВОВАТЬ»
    «КОНЕЦ»
    «ИСКЛЮЧИТЬ»
    «ИЗВЛЕЧЕНИЕ»
    «ЛОЖНО»
    «ПЕРВЫЙ»
    «FN»
    «СЛЕДУЮЩИЙ»
    «ФОРМАТ»
    «ГРУППА»
    «GROUP_CONCAT»
    «ЕСЛИ»
    «ИНДЕКС»
    "ВСТАВЬ"
    «ИНТЕРВАЛ»
    «ИСНУЛЛ»
    «КЛЮЧ»
    «ПОСЛЕДНИЙ»
    «ЛЕВО»
    «ЛИМИТ»
    «МАТЕРИАЛИЗОВАЛСЯ»
    «NEXTVAL»
    «НЕТ»
    «NOLOCK»
    «НЕТ»
    «NULL»
    «NULLS»
    «OF»
    "OFFSET"
    "ON"
    «ОТКРЫТЬ»
    «ОПТИМИЗИРОВАТЬ»
    «ORDER»
    «ПРИЁМ»
    «РАЗДЕЛ»
    «ПУТЬ»
    «ПРОЦЕНТ»
    «ТОЧНОСТЬ»
    «ОСНОВНАЯ»
    «ПРИОР»
    "ПРОЦЕДУРА"
    «ПУБЛИЧНО»
    «ДИАПАЗОН»
    "ЧИТАЙ"
    "ЗАМЕНИТЬ"
    «ПРАВИЛЬНО»
    "ROW"
    «РЯДЫ»
    «ШЕМА»
    «СЕПАРАТОР»
    «ПОСЛЕДОВАТЕЛЬНОСТЬ»
    «СЕССИЯ»
    «НА ПЛОЩАДКЕ»
    «БРАТЬЯ И СЁСТРЫ»
    «РАЗМЕР»
    «СТАРТ»
    «СТОЛ»
    «СТОЛЫ»
    «ВРЕМЕННЫЙ»
    «ВРЕМЕННО»
    "К"
    "TOP"
    «ПРАВДА»
    «ОТРЫВАТЬ»
    «ТИП»
    «БЕЗ ПОДПИСИ»
    "ВАЛИДИРОВАТЬ"
    «ЦЕННОСТЬ»
    «ЦЕННОСТИ»
    «ВИД»
    «XML»
    "XMLSERIALIZE"
    «ЗОНА»
    "{d"
    "{t"
    "{ts"
    "~"
    <K_DATETIMELITERAL>
    <K_DATE_LITERAL>
    <K_TIME_KEY_EXPR>
    <S_CHAR_LITERAL>
    <S_DOUBLE>
    <S_HEX>
    <S_IDENTIFIER>
    <S_LONG>
    <S_QUOTED_IDENTIFIER>

        at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:26538)
        на net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:26377)
        at net.sf.jsqlparser.parser.CCJSqlParser.PrimaryExpression(CCJSqlParser.java:11012)
        at net.sf.jsqlparser.parser.CCJSqlParser.BitwiseXor(CCJSqlParser.java:10671)
        at net.sf.jsqlparser.parser.CCJSqlParser.MultiplicativeExpression(CCJSqlParser.java:10624)
        at net.sf.jsqlparser.parser.CCJSqlParser.AdditiveExpression(CCJSqlParser.java:10587)
        at net.sf.jsqlparser.parser.CCJSqlParser.BitwiseAndOr(CCJSqlParser.java:10533)
        at net.sf.jsqlparser.parser.CCJSqlParser.ConcatExpression(CCJSqlParser.java:10509)
        at net.sf.jsqlparser.parser.CCJSqlParser.SimpleExpression(CCJSqlParser.java:10495)
        at net.sf.jsqlparser.parser.CCJSqlParser.PrimaryExpression(CCJSqlParser.java:11005)
        at net.sf.jsqlparser.parser.CCJSqlParser.BitwiseXor(CCJSqlParser.java:10671)
        at net.sf.jsqlparser.parser.CCJSqlParser.MultiplicativeExpression(CCJSqlParser.java:10624)
        at net.sf.jsqlparser.parser.CCJSqlParser.AdditiveExpression(CCJSqlParser.java:10587)
        at net.sf.jsqlparser.parser.CCJSqlParser.BitwiseAndOr(CCJSqlParser.java:10533)
        at net.sf.jsqlparser.parser.CCJSqlParser.ConcatExpression(CCJSqlParser.java:10509)
        at net.sf.jsqlparser.parser.CCJSqlParser.SimpleExpression(CCJSqlParser.java:10495)
        at net.sf.jsqlparser.parser.CCJSqlParser.SQLCondition(CCJSqlParser.java:9195)
        at net.sf.jsqlparser.parser.CCJSqlParser.Condition(CCJSqlParser.java:8697)
        at net.sf.jsqlparser.parser.CCJSqlParser.SelectExpressionItem(CCJSqlParser.java:4798)
        at net.sf.jsqlparser.parser.CCJSqlParser.SelectItem(CCJSqlParser.java:5033)
        at net.sf.jsqlparser.parser.CCJSqlParser.SelectItemsList(CCJSqlParser.java:4789)
        at net.sf.jsqlparser.parser.CCJSqlParser.PlainSelect(CCJSqlParser.java:4273)
        at net.sf.jsqlparser.parser.CCJSqlParser.SetOperationList(CCJSqlParser.java:4496)
        at net.sf.jsqlparser.parser.CCJSqlParser.SelectBody(CCJSqlParser.java:4163)
        at net.sf.jsqlparser.parser.CCJSqlParser.SubSelect(CCJSqlParser.java:13247)
        at net.sf.jsqlparser.parser.CCJSqlParser.FromItem(CCJSqlParser.java:6263)
        at net.sf.jsqlparser.parser.CCJSqlParser.PlainSelect(CCJSqlParser.java:4287)
        at net.sf.jsqlparser.parser.CCJSqlParser.SetOperationList(CCJSqlParser.java:4496)
        at net.sf.jsqlparser.parser.CCJSqlParser.SelectBody(CCJSqlParser.java:4163)
        at net.sf.jsqlparser.parser.CCJSqlParser.Select(CCJSqlParser.java:4158)
        at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:130)
        at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:81)
        at net.sf.jsqlparser.parser.CCJSqlParserUtil.parseStatement(CCJSqlParserUtil.java:163)
        at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:59)
        at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:37)
        at com.baomidou.mybatisplus.extension.parser.JsqlParserSupport.parserSingle(JsqlParserSupport.java:49)
        ... 124 распространённых кадра пропущены

Ссылка на персонаж Escape

   <                                 
                     <
                     Меньше числа                                          
                     >
                     >                                      
                     Больше, чем число
                     &
                     &
                     и
                     '
                     ’
                     апостроф
                     "
                     "
                     Двойные кавычки


решение

Исправьте SQL-оператор в файле Mapper, неправильный SQL-оператор выглядит следующим образом:


После исправления





Предыдущий:Java Map не чувствителен к регистру, не чувствительному к регистру LinkedCaseInsensitiveMap от KEY
Следующий:WhyNotWin11 проверяет, можно ли обновить компьютер до Windows 11
Опубликовано 6.09.2021 15:12:41 |
Уровень слишком низкий для просмотра кода?
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com