Это запрос, который возвращает имя столбца идентификации;
create procedure GetIdentity
@tablename varchar(50)
begin
SELECT OBJECT_NAME(OBJECT_ID) AS TABLENAME,
NAME AS COLUMNNAME,
SEED_VALUE,
INCREMENT_VALUE,
LAST_VALUE,
IS_NOT_FOR_REPLICATION
FROM SYS.IDENTITY_COLUMNS
WHERE OBJECT_NAME(OBJECT_ID) = @tablename
end
Тогда сформируйте сторону кода.
Вызовите эту хранимую процедуру, используя роль администратора данных, затем отметьте datareader.hasrows()
. Если значение условия истинно (1
), то таблица имеет столбец идентификаторов, если он установлен. Если нет, то у него нет столбца идентификаторов.