ALTER TABLE в процедуре
От: Spidola Россия http://www.usametrics.ru
Дата: 25.01.05 18:39
Оценка:
MS SQL 2000

Есть необходимость внутри процедуры создавать временную таблицу и потом добавлять в неё поле.

1.
CREATE TABLE #t (f1 int)
ALTER TABLE #t ADD id_t int identity
select id_t from #t

Указанный выше код (1) выдаёт ошибку исполнения (Invalid column name 'id_t'.). Мало того, код ниже (2) ошибки не выдаёт:

2.
CREATE TABLE #t (f1 int)
ALTER TABLE #t ADD id_t int identity 
select * from #t

Проверял в Query Analyzer. Первый код (1) тоже выдаёт ошибку исполнения (нет поля id_t). В QueryAnalyzer-е лечится так:

CREATE TABLE #t (f1 int)
ALTER TABLE #t ADD id_t int identity 
GO
select id_t from #t

Как вылечить в процедуре (вроде GO использовать нельзя). И, если не лечится, то почему?
... << RSDN@Home 1.1.4 beta 4 rev. 303>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.