Вопрос по database, sql-server-2008 – Можно ли изменить тип данных столбца в представлении?
Обычно я запускаю такой скрипт:
ALTER TABLE [TABLE]
ALTER COLUMN [Column] NVARCHAR(40);
В результате поле в таблице преобразуется в nvarchar. Но каков синтаксис того же действия для представления? Или это вообще возможно?
Вы не можете диктовать тип данных для выходного столбца представления. Лучшее, что вы можете сделать, это как предложено @buckley - использовать CAST или CONVERT, чтобы принудительно включить явный тип данных в определение представления.
2
ответа
Convert (Desired datatype,column name)
например.Convert(varchar(50),dbo.User_master.User_email)
где User_email имеет предыдущий тип как nvarchar (MAX).
Если вы хотите преобразовать данные nvarchar в datetime, тогда для преобразования функции требуется дополнительный параметр
CONVERT(data_type(length),expression,style)
например.Convert(Datetime,dbo.User_master.User_DOB,103)
больше информации наФункция SQL Server CONVERT ()
Похожие вопросы
Вы не можете диктовать тип данных для выходного столбца представления. Лучшее, что вы можете сделать, это как предложено @buckley - использовать CAST или CONVERT, чтобы принудительно включить явный тип данных в определение представления.