Проблема с временной таблицей хранимой процедуры? - PullRequest
1 голос
/ 06 июля 2011

Я использую хранимую процедуру для извлечения данных из двух разных баз данных в приложение ASP.NET.Моя хранимая процедура работает следующим образом: проверьте, существует ли глобальная временная таблица или нет, скажем ## temp_table, - если существует, удалите ее, а если нет, создайте новую временную таблицу, скажем, ## temp_table - извлеките данные из двух разных баз данных и заполните их во временной таблице -Выберите данные из временной таблицы - Удалить временную таблицу

Теперь проблема заключается в том, что когда число пользователей, обращающихся к одной и той же странице с той же хранимой процедурой, как описано выше, для некоторых пользователей возникает ошибка, что временная таблица уже существует.Теперь, пожалуйста, помогите мне решить такую ​​проблему или предложите альтернативный вариант, потому что я не хочу писать запрос в сторонний код ASP.Кто-то предлагает мне использовать представления.Жду ваших предложений.

Ответы [ 2 ]

0 голосов
/ 06 июля 2011

Вы не должны создавать таблицу, вы должны объявить переменную для временного хранения таблицы ... со столбцом, который вы ожидаете заполнить ... объявить переменную таблицы следующим образом:

declare @tmpTable table(myID int,myName varchar(50));

fill it like
insert into @tmpTable
Select * from table1

use it like
select * from @tmpTable
0 голосов
/ 06 июля 2011

Таблицы "##" доступны для всех соединений с экземпляром SQL, а таблицы "#" - только для соединения, которое их создало. Описываемая вами функциональность звучит так, как будто вы должны использовать таблицы "#", а не таблицы "##".

...