IMHO bạn không nên sử dụng INFORMATION_SCHEMA
cho bất kỳ điều nào trong số này
. Những điều sau đây sẽ hoạt động đối với một bảng hoặc một dạng xem:
SELECT UPPER(name)
FROM sys.columns
WHERE OBJECT_NAME([object_id]) = N'mutable';
Những điều sau đây sẽ phù hợp với một từ đồng nghĩa (một yêu cầu bạn đã thay đổi sau này):
SELECT UPPER(name)
FROM sys.columns AS c
CROSS APPLY
(
SELECT name
FROM sys.synonyms
WHERE name = N'mutable'
AND OBJECT_ID([base_object_name]) = c.[object_id]
) AS x;
Bạn cũng có thể chỉ cần nói:
DECLARE @obj INT;
SELECT @obj = OBJECT_ID([base_object_name])
FROM sys.synonyms WHERE name = N'mutable';
SELECT UPPER(name) FROM sys.columns WHERE [object_id] = @obj;