
    Новые сообщения [новые:0]
  
  Дайджест 
  
  Горячие темы
    Избранное [новые:0]
  
Форумы 
 
Пользователи 
Статистика 
Статистика нагрузки 
    Мод. лог 
  
  Поиск 
  | 
| 
 18.02.2021, 18:06 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Следующий код: Код: java 1. 2. 3. 4. 5. 6. 7. падает с исключением: Код: java 1. 2. Причина здесь: select distinct a, b from by.xxx.xxxxxxxxxx.xxxxxxx.xxxxxxxxxxxx.Person a, by .xxx.xxxxxxxxxx.xxxxxxx.xxxxxxxxxxxx.Phone b Имя пакета, где лежат энтити, начинается с "by". Можно ли обойтись без переименования пакета? Есть ли какие экранирующие конструкции? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 19:16 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  faustgreen, Вы проверили переименовав пакет и ошибка ушла? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 19:53 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  PetroNotC Sharp, Да, переименовал в  bby .xxx.xxxxxxxxxx.xxxxxxx.xxxxxxxxxxxx - все ок. Причем, если из запроса убрать вторую энтити, то все отработает норм даже с пакетом by.xxx.xxxxxxxxxx.xxxxxxx.xxxxxxxxxxxx: Код: java 1. 2. 3. 4. 5. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 19:57 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Только сейчас заметил, в первом посте запрос и сообщение об ошибке немного не совпадают (лог ошибки взял из другого примера). Но это сути не менят, там все аналогично. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 21:55 
 | 
|||
|---|---|---|---|
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Коллизия имен и резервированных слов - обычное дело в SQL. Поэтому и делают SQL-билдеры. Попробуй закрыть этот by кавычками (" quotes) как делают в 99% SQL или еще есть вариант - обратный апостроф (`) (как в PrestoDb /BigData). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 22:29 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  mayton, попробовал прау вариантов с кавычками - не работает, да и не до конца понятно что экранировать. запрос выглядит так: Код: java 1. 2. 3. 4. 5. 6. 7. А в логе вместо коротких имен классов, полные. Видимо это хибер их внутри преобразует. Если сделать, что то типо такого Код: java 1. 2. 3. 4. 5. 6. 7. , то получаем unexpected token 'Person'. Вариант с Код: java 1. 2. 3. 4. 5. 6. 7. тоже не прокатил. Вообщем, переименовал пока пакет, на будещее учту. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 22:35 
 | 
|||
|---|---|---|---|
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Во первых не прямой а обратный апостроф. Hex code 0x60. Во вторых где у тебя там ключевое слово BY (ORDER BY) ? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 23:00 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  mayton,  По первому вопросу: Код: java 1. 2. 3. 4. По второму вопросу: Может "by" отдельно и не зарезервированное поле, но лог ошибки указывает именно на него: unexpected token: by near line 1, column 83 (начало имени пакета для второй энтити). Хотя может ошибка и совем не в этом, хз. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 23:16 
 | 
|||
|---|---|---|---|
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Ну проверь. Создай таблицу с названием "by" или поле. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 23:16 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Caused by: org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected token: by near line 1, column 84  Код: java 1. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 23:31 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Поигрался с именем пакета: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Видимо, что то связано с внутренними алгоритмами парсера sql-строки. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 18.02.2021, 23:46 
 | 
|||
|---|---|---|---|
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Попробуй пересоздай пакет с именем в кавычках  Код: java 1. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 19.02.2021, 00:00 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  mayton, не понял .... символ {"} вроде ж нельзя использовать в имени пакета. А если кавычки добавить в запрос, то unexpected char '"' Вообщем ладно, пакет переименовал, заработало, ну и ок (проект учебный, так что сойдет). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
| 
 24.02.2021, 09:11 
 | 
|||
|---|---|---|---|
  
  | 
|||
Hibernate JPQL зарезервированные слова  | 
|||
| 
 #18+ 
  
    
  Zzz79, пример из официальной  доки  по хиберу. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 
  
  
   | 
  | 

start [/forum/topic.php?fid=59&tablet=1&tid=2120520]:  | 
    0ms | 
get settings:  | 
    11ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    4ms | 
check topic access:  | 
    4ms | 
track hit:  | 
    67ms | 
get topic data:  | 
    14ms | 
get forum data:  | 
    3ms | 
get page messages:  | 
    55ms | 
get tp. blocked users:  | 
    2ms | 
| others: | 12ms | 
| total: | 185ms | 

    | 0 / 0 | 

    Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
    
    
    «На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
    
    
    ... ля, ля, ля ...