Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Не пойму в чем косяк при создании временных таблиц [D6, MSSQL]


GAlex ©   (2003-04-29 15:36:00) 

Запрос 1:
select ani,
count(ani) as cnt,
sum(length) as len
into #mnth1
from user_log
where (call_time>=:Date1) and (call_time<=:Date2) and (money>0) and (ani not in (select ani from NoBilling))
group by ani
having (count(ani)>:call_cnt) and (sum(length)>:call_len)

Запрос 2:
select top 1 * into #mnth1 from user_log
Запрос 3:
select * from #mnth1
Запрос 2 потом 3 работают на ура
Запрос 1 потом 3 Выдает Invalid object name "#mnth1"
В чем косяк а?


GAlex   (2003-04-30 14:51:00) [1]

Все заработало пока правда не понимаю почему, но все Ok


GAlex   (2003-04-30 10:45:00) [2]

Я все внимательно прочита просто пока я создаю только одну а потом я строку с именем #mnth1 буду подменять на другую.


stone   (2003-04-30 10:23:00) [3]


> GAlex © (30.04.03 09:37)
> Дело в том что мне надо создать этих #mnth должно быть несколько
> и сколько я сразу не знаю

Ты все же не внимательно почитал о временных таблицах. Там сказано, что в разных соединениях могут создаваться локальные временные таблицы с одинаковыми именами. Даже если в пределах одного соединения одна и та же процедура будет вызвана несколько раз, для каждой копии будет создана отдельная таблица.


GAlex   (2003-04-30 09:37:00) [4]

Дело в том что мне надо создать этих #mnth должно быть несколько и сколько я сразу не знаю


GAlex   (2003-04-30 09:12:00) [5]

2 АлексейК Я не админю MSSQL поэтому я не хочу лезть в его нутрю.


GAlex   (2003-04-30 09:09:00) [6]

Почему тогда 2+3 работает в разных TQuery, а 1+3 нет?


АлексейК   (2003-04-30 04:59:00) [7]

Запускай все в хранимой процедуре, либо используй SDAC.


stone   (2003-04-29 16:34:00) [8]


> 1+3 (не работает)

Они должны работать в пределах одного скрипта. Ты какие компоненты используешь?


GAlex   (2003-04-29 16:32:00) [9]

Запрос 2 мне в принципе не нужен я просто на нем тестировал все работало когда написал нужный запрос то перестало работать. Запрос 1 прорабатывает корректно но в 3-м я не могу получить доступ к его результатам.


GAlex   (2003-04-29 16:29:00) [10]

У меня не в скрипте это все. У меня открывается connection при запуске программы и закрывается только после окончания программы. А пример понимать надо так либо 1+3 (не работает)
либо (2+3) работает


stone   (2003-04-29 16:19:00) [11]

если выполнять все три команды сразу, ошибка возникнет на второй

временная таблица автоматически уничтожается после выполнения всех команд в скрипте


GAlex   (2003-04-29 16:07:00) [12]

В QueryAnalizer все работает на ура и то и то


GAlex   (2003-04-29 16:03:00) [13]

И что я там ничего не нашел такого особого кроме как то что они удаляются при завершении сеанса пользователя


stone   (2003-04-29 15:45:00) [14]


> В чем косяк а?

Не мешает почитать о временных таблицах.


Наверх

Титульная страница Поиск, карта сайта Написать письмо