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>>