|
|
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Допустим в FoxPro было такое понятие как курсор. Я делаю запрос и результат запроса находится в некой виртуальной табличке с которой я могу делать джоины следующих своих запросов. Аналогичное было в SyBase и MSSQL непосредственно в хранимых процедурах можно было создавать виртуальную табличку # которую потом удалять по окончанию с ней работы. Как подобное реализовать в Hibernate? Мне нужно несколько запросов сделать и заджоинить их потом в другом запросе. Только не предлогайте пожалуйста варианты с вложенными подзапросами и т.д. интересует именно то, что я описал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:02:14 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
native sql. Стандартных средств, думаю, нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:24:26 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Никак. Дело в том что то, что было описано - это какие-то дополнительные microsoft'ские приблуды, которые, видимо, за счёт каких-то дополнительных модулей позволяют делать select'ы к некой структуре памяти, которую они называют курсором. А в рузультате HQL возвразается объект - тоже структура в памяти, но только select'ы к ней уже делать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:24:48 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Niky4000Дело в том что то, что было описано - это какие-то дополнительные microsoft'ские приблуды, которые, видимо, за счёт каких-то дополнительных модулей позволяют делать select'ы к некой структуре памяти, которую они называют курсором. Временные таблицы и курсоры это не одно и то же. И имеются во всех нормальных базах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:27:15 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Временные таблицы и курсоры это не одно и то же. И имеются во всех нормальных базах. Имеется в виду, что программа, выполняя некий HQL запрос, и получив в результате некий объект, может или нет делать select'ы к этому объекту. Ответ: нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:40:59 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Niky4000Временные таблицы и курсоры это не одно и то же. И имеются во всех нормальных базах. Имеется в виду, что программа, выполняя некий HQL запрос, и получив в результате некий объект, может или нет делать select'ы к этому объекту. Ответ: нет. Я бы не был так категоричен. HQL-ем можно наполнить временную таблицу. Но вычитывать из неё, придется нативным запросом. Хотя можно и что-нибудь поизобретать, чтобы HQL прикрутить тоже. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:44:34 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНо вычитывать из неё, придется нативным запросом почему? разве извне можно отличить временную глобальную таблицу от простой, ровно как и вьюху? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:51:07 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Я бы не был так категоричен. HQL-ем можно наполнить временную таблицу. Но вычитывать из неё, придется нативным запросом. Хотя можно и что-нибудь поизобретать, чтобы HQL прикрутить тоже. Ну, это да, но это уже через СУБД всё работать будет. Просто во всякой microsoft'ской приблуде оно не через СУБД, а там есть табличка в памяти, именуемая курсором и к этому курсору без всякой СУБД можно select написать. Но это всё за счёт каких-то библиотек делается, видимо, которые интерпретируют select'ы и преобразуют их в команды выборки - по сути свой мини sql-сервер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 16:51:08 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
chpashaпочему? разве извне можно отличить временную глобальную таблицу от простой, ровно как и вьюху? Потому что имя таблцицы жестко прибито к маппингу. Хотя можно попробовать замапить на две таблицы - постоянную и временную. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 17:22:29 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Ну вообще как обычно выкручиваются в джаве, когда надо сделать 2 запроса и потом третий с джоинами к результатам этих двух? Ведь не всегда в запросе одна(две) табличка с условием. Может же быть n табличек и я разбиваю здоровый запрос на несколько мелких чтоб ускорить выборку или если мне нужны промежуточные данные для дальнейшей работы. Должен же быть стандартный выход из этого положения. Или делать в БД вьюхи и к ним обращаться? .. или хранимки опять таки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 17:25:49 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Подзапросы и вьюхи будут работать быстрее чем выборка некого курсора и запрос по нему. В чем проблема сделать на подзапросах? Единственное, что SQL может сильно разрастись в некоторых задачах. Тогда лучше перейти на хранимку\вьюху\функцию, чтобы пере-использовать SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 17:29:13 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczПодзапросы и вьюхи будут работать быстрее чем выборка некого курсора и запрос по нему. В чем проблема сделать на подзапросах? Единственное, что SQL может сильно разрастись в некоторых задачах. Тогда лучше перейти на хранимку\вьюху\функцию, чтобы пере-использовать SQL. И после этого всего надо ещё спросить себя: "а по назначению ли я использую ORM?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 17:29:52 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
Это назначение мне не нравится. Не нравится как работает и много чего не нравится в нем. Например не нравится 100500 мелких запросов, когда проще сделать один(два) нормальный свой в нативе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 18:44:57 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
jabНапример не нравится 100500 мелких запросов Умеючи и член сломать можно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 18:51:10 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
jabЭто назначение мне не нравится. Не нравится как работает и много чего не нравится в нем. Например не нравится 100500 мелких запросов, когда проще сделать один(два) нормальный свой в нативе. Чего? Ну, а зачем тогда используете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 20:01:23 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
> Как подобное реализовать в Hibernate? Нет, нет аналогов. Мне нужно несколько запросов сделать и > заджоинить их потом в другом запросе. Только не предлогайте пожалуйста варианты > с вложенными подзапросами и т.д. интересует именно то, что я описал. Так задJOIN-нь просто таблицы, напиши запрос, а потом из запроса создай коллекцию объектов. hiber позволяет просто из запроса создавать объекты. Главное, чтобы там были все нужные тебе поля. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 21:46:05 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
> Дело в том что то, что было описано - это какие-то дополнительные microsoft'ские > приблуды, которые, видимо, за счёт каких-то дополнительных модулей позволяют > делать select'ы к некой структуре памяти, которую они называют курсором. Курсор в понятии FoxPro -- это просто таблица с результатом. Временная, самоудаляющаяся. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 21:47:15 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
jabЭто назначение мне не нравится. Не нравится как работает и много чего не нравится в нем. Например не нравится 100500 мелких запросов, когда проще сделать один(два) нормальный свой в нативе. ОРМ предназначен для учётки-ИС. Т.е. для CRUD - запросов. Это как раз 1000 мелких )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2012, 22:29:33 |
|
||
|
Как реализовать запрос на основании другого запроса в Hibernate?
|
|||
|---|---|---|---|
|
#18+
chpashajabНапример не нравится 100500 мелких запросов Умеючи и член сломать можно. +1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2012, 15:31:20 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=37895845&tid=2131250]: |
0ms |
get settings: |
12ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
12ms |
get forum data: |
4ms |
get page messages: |
79ms |
get tp. blocked users: |
2ms |
| others: | 277ms |
| total: | 452ms |

| 0 / 0 |
