|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.06.2013, 10:32 | #1 |
Пользователь
Регистрация: 16.04.2011
Сообщений: 36
|
Передача параметров множеству процедур и запросов
Есть огромный "запрос", состоящий из 2-х временных таблиц, 8 процедур и одного запроса. Им всем нужно каким то образом передать два параметра - дату начала и дату конца.
Вопрос - как лучше всего это реализовать? Псевдо-код приветствовался бы, а то я на словах часто путаюсь |
07.06.2013, 10:47 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Сделать "огромную" процедуру, передать ей эти параметры, а она уж пусть разруливает логику "огромного" запроса
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
07.06.2013, 10:54 | #3 |
Пользователь
Регистрация: 16.04.2011
Сообщений: 36
|
Ну, как вариант, я могу склеить те самые 8 процедур. Но у меня есть еще один запрос, отдельный от процедур, котрый, по сути, делает красивую шапочку для таблицы и считает некоторые итоги. Как с ним быть? Ведь на сколько я знаю, из функции в MYSQL нельзя вернуть таблицу.
|
07.06.2013, 11:13 | #4 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А временную таблицу в процедуре можно-то создать? После выполнения процедуры простым селектом и взять из неё сформированные данные.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
07.06.2013, 11:22 | #5 | |
Пользователь
Регистрация: 16.04.2011
Сообщений: 36
|
Цитата:
Код:
|
|
07.06.2013, 11:29 | #6 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
А в чем проблема, что параметры обязательно нужно только раз передать? Сделайте одну процедуру и параметризированный SELECT
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
07.06.2013, 11:37 | #7 |
Пользователь
Регистрация: 16.04.2011
Сообщений: 36
|
Да проблема в том, что потом этот огроомный запросище надо как то вызвать из костыльного мед. софта. Мне намекнули, типа, делай только два параметра - и все.
|
07.06.2013, 12:02 | #8 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
Я же писал в #4 - в процедуре данные полученные этим запросом записать во временную таблицу. MySQL позволяет же это. А из софта после вызова процедуры сделать простой SELECT * FROM из этой временной таблицы. Но не нравятся мне все эти примочки, лучше уж оставил бы как в #6
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 07.06.2013 в 12:08. |
07.06.2013, 13:22 | #9 |
Пользователь
Регистрация: 16.04.2011
Сообщений: 36
|
Ок, сейчас что нибудь попробую.
Угу, мне самому это все не нравится, но как еще написать запрос в 1000 строк - я не знаю. УПД: Не, создавать еще одну таблицу и забивать ее значениями не вариант, она большой получается - 120 столбцов. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
одномерный массив с использованием процедур и функций без параметров и с параметрами | Ekaterinasoroka | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 14.04.2013 08:35 |
Перехват значений параметров POST запросов | alumium | Работа с сетью в Delphi | 2 | 03.12.2012 00:45 |
Организация программ с использованием процедур .использованием параметров-значений и параметров переменных | Фрейтор 40-500 | Помощь студентам | 0 | 02.11.2012 21:58 |
Организация программ с использованием процедур .использованием параметров-значений и параметров переменных | Фрейтор 40-500 | Помощь студентам | 6 | 02.11.2012 21:46 |
Передача параметров | Gudzon | Общие вопросы Delphi | 12 | 08.02.2007 08:19 |