
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
16.04.2002, 09:27
|
|||
|---|---|---|---|
|
|||
Кто-нибудь объяснит почему так нельзя? |
|||
|
#18+
В хранимке делаю след. конструкцию , перед IF в tempdb нет таблички #DIMA_BO_KR IF @n1 = 1 BEGIN SELECT **** INTO #DIMA_BO_KR FROM *** END ELSE BEGIN SELECT **** INTO #DIMA_BO_KR FROM *** END Почему MSSQL7.0 не дает сохранить эту хранимку пока я не вынесу создание #DIMA_BO_KR выше IF . Я понимаю, что он просматривает все сверху вниз, и ругается что Already an object name #DIMA_BO_KR . Но ведь это разные ветки IF ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
16.04.2002, 09:41
|
|||
|---|---|---|---|
Кто-нибудь объяснит почему так нельзя? |
|||
|
#18+
Это один batch - и этого достаточно. Какая "ветка" будет выполнена станет известно только в процессе выполнения, а на момент компиляции про это еще нет никакой информации. Можно создать временную таблицу до ветвления и далее использовать INSERT INTO. Либо каким-то образом перенести условия проверки в тело единого запроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=46&mobile=1&tid=1823079]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
24ms |
get topic data: |
8ms |
get forum data: |
12ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 233ms |
| total: | 341ms |

| 0 / 0 |
