Вопрос по database, sql-server-2008 – Можно ли изменить тип данных столбца в представлении?

16

Обычно я запускаю такой скрипт:

ALTER TABLE [TABLE]
ALTER COLUMN [Column] NVARCHAR(40);

В результате поле в таблице преобразуется в nvarchar. Но каков синтаксис того же действия для представления? Или это вообще возможно?

Вы не можете диктовать тип данных для выходного столбца представления. Лучшее, что вы можете сделать, это как предложено @buckley - использовать CAST или CONVERT, чтобы принудительно включить явный тип данных в определение представления. Aaron Bertrand

Ваш Ответ

2   ответа
32

CREATE VIEW AView
AS
SELECT CAST(title AS char(50))
FROM titles

Так что проверьте CAST, а также CONVERT на страницах MSDN для полной информации

-1

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

Похожие вопросы