|
как правильно сделать запрос с таблицами значений? | ☑ | ||
---|---|---|---|---|
0
Hipocrisy2013
21.06.13
✎
12:25
|
вот так не работает:
выбрать * из &dgfghgh как уу левое соединение &tggt как ууу по уу.вв = ууу.аппп |
|||
1
Godofsin
21.06.13
✎
12:26
|
Это чо вообще?
|
|||
2
Godofsin
21.06.13
✎
12:27
|
МВТ используй
|
|||
3
Hipocrisy2013
21.06.13
✎
12:29
|
что такое mbt?
|
|||
4
kosts
21.06.13
✎
12:30
|
(0) Такую временную таблицу нельзя сразу использовать
|
|||
5
Godofsin
21.06.13
✎
12:30
|
Менеджер временных таблиц.
|
|||
6
kosts
21.06.13
✎
12:31
|
(4)+ Т.е. разбей запрос на 3 запроса
|
|||
7
Hipocrisy2013
21.06.13
✎
12:31
|
есть у кого нить небольшой пример?
|
|||
8
kosts
21.06.13
✎
12:33
|
выбрать
* Поместить уу из &dgfghgh как уу ; выбрать * Поместить ууу из &tggt как ууу ; выбрать * из уу левое соединение ууу как ууу по уу.вв = ууу.аппп |
|||
9
ДенисЧ
21.06.13
✎
12:33
|
выбрать *
ПОМЕСТИТЬ вт1 из &парам1 как парам1; выбрать * ПОМЕСТИТЬ вт2 из &парам2 как парам2; выбрать вт1.* из вт1 левое соединение вт2 по вт1.п1 = вт2.п2 |
|||
10
Godofsin
21.06.13
✎
12:33
|
МВТ = Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МВТ; .... выбрать * Поместить МояПерваяВТ из &dgfghgh как уу; //////////////////// выбрать * Поместить МоявтораяВТ из &tggt как ууу /////////////////// Выбрать * из МояПерваяВТ КАК МояПерваяВТ ЛевоеСоединение МояВтораяВТ Как МояВтораяВТ ПО по МояПерваяВТ.вв = МояВтораяВТ.аппп |
|||
11
Godofsin
21.06.13
✎
12:33
|
(8) (9) хах)))
|
|||
12
Deon
21.06.13
✎
12:34
|
я тоже почти дописал
|
|||
13
semiluki
21.06.13
✎
12:34
|
Запрос = Новый Запрос;
Запрос.Текст = "Выбрать ТЗ.* |Поместить ТЗ |Из &ТЗ Как ТЗ |; |Выбрать ТЗ.* |Из ТЗ Как ТЗ |Где ТЗ.Номенклатура В(&ФильтрПоНоменклатуре)"; Запрос.УстановитьПараметр("ТЗ",МояТЗ); Запрос.УстановитьПараметр("ФильтрПоНоменклатуре",МойФильтр); |
|||
14
Godofsin
21.06.13
✎
12:35
|
+(10) Запрос.УстановитьПараметр("dgfghgh", МояПерваяТЗ);
|
|||
15
kosts
21.06.13
✎
12:35
|
МенеджерВременныхТаблиц нужен, если запрос будет выполнятся отдельными вызовами Выполнить().
|
|||
16
Deon
21.06.13
✎
12:36
|
(14) А 2ю? )))
|
|||
17
Godofsin
21.06.13
✎
12:36
|
(15) Я по привычке)
|
|||
18
Godofsin
21.06.13
✎
12:36
|
(16) Думаю догадается )))
|
|||
19
Mitriy
21.06.13
✎
12:39
|
(15) менеджер нужен только тогда, когда надо выполнять много разных запросов, использующих одни и те же временные таблицы... ну, или если временные таблицы формируются в разных местах...
|
|||
20
kosts
21.06.13
✎
12:40
|
Может кто знает, можно МенеджерВременныхТаблиц переприсваивать другому запросу?
Запрос.Выполнить(); Запрос2.МенеджерВременныхТаблиц = Запрос.МенеджерВременныхТаблиц; |
|||
21
Mitriy
21.06.13
✎
12:42
|
(20) да
|
|||
22
Deon
21.06.13
✎
12:45
|
А при переходе с сервера на клиент, а потом обратно на сервер можно сохранить МВТ первого серверного вызова?
|
|||
23
Mitriy
21.06.13
✎
12:47
|
(22) попробуй через временное хранилище...
|
|||
24
Deon
21.06.13
✎
12:49
|
(23) Ну, наверно, прокатит, ТЗ же нормально можно хранить. Пробовать лень )
|
|||
25
fisher
21.06.13
✎
12:51
|
Не прокатит. Болт вам, а не хранение временных таблиц между серверными вызовами.
|
|||
26
Mitriy
21.06.13
✎
12:54
|
(25) а если формирование запихать в общий модуль с повторным использованием?
|
|||
27
fisher
21.06.13
✎
13:00
|
(26) Не даст, кажись. Как я только не извращался когда-то. Какие горы можно было бы ворочать! Но тут на особенности работы с сиквелом завязано. Обычные временные таблицы, не глобальные, уничтожаются при завершении соединения с БД. А при завершении серверного вызова завершается и соединение с БД.
|
|||
28
fisher
21.06.13
✎
13:03
|
Вернее так - как я понимаю, по дефолту каждый запрос к БД формируется отдельным соединением. МВТ - это просьба придержать соединение с БД и способ выполнить очередной запрос в этом же соединении. Способов придержать соединение с БД между серверными вызовами я не нашел. Судя по всему, они таки закрываются при завершении серверного вызова в любом случае.
|
|||
29
fisher
21.06.13
✎
13:05
|
Вообще МВТ - глупый объект, маскирующий суть происходящего и усложняющий работу платформы. Оформили бы честную работу с соединениями - глядишь и был бы способ.
|
|||
30
Mitriy
21.06.13
✎
13:13
|
понятно...
|
|||
31
Deon
21.06.13
✎
13:15
|
прикольно, спасибо
|
|||
32
Pro-tone
21.06.13
✎
13:21
|
(29) и без типизации колонок
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |