Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Наличие временной таблицы
|
|||
|---|---|---|---|
|
#18+
Всем привет, Никак не могу разобраться, как определить существует ли временная таблица для текущего соединения или нет. В принципе, я ее виду в tempdb, но если у меня хотя бы два соединения с одинаковым именем временной таблицы, то тут начинается путаница. Ничего похожего в документации не нашел, но должно же быть какое-то решение? Прошу прощения, если это FAQ. Если есть в BOL, прошу указать номер страницы. Заранее спасибо. PS SQL Server 7, если это имеет значение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 19:32 |
|
||
|
Наличие временной таблицы
|
|||
|---|---|---|---|
|
#18+
Временная таблица существует столько сколько существует соединение, или пока ее некильнут, оставив соединение открытым. А название у каждой таблицы уникальное и второй такой же быть неможет. Если один юзер создал временную таблицу с именем #My_table, и второй узер тут же создал свою таблицу #My_table, то обе будут жить в разных пространствах, потому что будут иметь уникальное имя типа #My_table_______________34536547 и #My_table___________6765624532.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.01.2002, 23:00 |
|
||
|
Наличие временной таблицы
|
|||
|---|---|---|---|
|
#18+
С этим все понятно, открытыми осталить только 2 вопроса - как бы мне научиться правильно формулировать вопросы и как узнать, что временная таблица уже существует. Ситуация такая: несколько процедур кидают данные в одну времменную таблицу. Будет ли вызвана хотя бы одна из этих процедур я не знаю, поэтому создавать таблицу заранее вроде бы как нет смысла. С другой стороны ни одна процедура не знает, существует ли таблица или ее надо прежде создать. Неужели нет способа определить сабж? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 04:24 |
|
||
|
Наличие временной таблицы
|
|||
|---|---|---|---|
|
#18+
select object_id('tempdb..#t1') если NULL, то временная таблица с таким именем не существует ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 06:35 |
|
||
|
Наличие временной таблицы
|
|||
|---|---|---|---|
|
#18+
>> Неужели нет способа определить сабж? Да есть способ... и даже не 1... и опять же - 100 раз уже здесь про это писалось... (а FAQ-а как не было, так и нет... , ворчу...) Способ первый - "тупо в лоб": IF NOT EXISTS (SELECT * FROM tempdb..sysobjects WHERE type = 'u' AND name LIKE '#YourTable%') <- "процент" здесь в конце строчки с именем - важен... CREATE TABLE #YourTable (.......) Способ второй - "культурно": IF NOT EXISTS (SELECT * FROM tempdb..sysobjects WHERE id = object_id('tempdb..#YourTable')) <- "процент" здесь в конце строчки с именем - не нужен... CREATE TABLE #YourTable (.......) Удачи!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.01.2002, 06:36 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1824361]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
64ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 369ms |

| 0 / 0 |
