В мн SQL Oracle можно объявить переменную и определить ее тип на основе столбца таблицы:
declare var1 table.column%TYPE;
Действительно ли возможно сделать что-то подобное в SQL Server MS?
Нет, вы не можете этого сделать. Ближайшим эквивалентом является Типы данных, определяемые пользователем
. Это даст вам уровень абстракции, который может помочь, но это не то же самое, что получение типа из столбца.
Это может обойти настоящую проблему, но вы можете немного «обмануть»,
Select *
INTO #tmp
From MyTable
Where 1 = 0
Автоматически создаст временную таблицу со всеми столбцами с правильными типами данных.