Не удается вызвать методы при ошибке BIGINT

У меня есть запрос T-SQL, над которым я некоторое время работал, он кажется простым, но я получаю сообщение об ошибке в конструкторе запросов, когда пытаюсь его выполнить:

SELECT     Date, CAST(Date AS bigint) AS DateNum, Title, Earnings
FROM         dbo.Analysis_001

Всякий раз, когда я пытаюсь выполнить/изменить это в конструкторе, я получаю сообщение «Невозможно вызвать методы в BIGINT» в виде всплывающей ошибки. Из-за разочарования я попытался выполнить его с помощью «CREATE VIEW», и это сработало... Почему?


person Albert Perrien    schedule 05.04.2011    source источник


Ответы (1)


Это ошибка:

Связанный вопрос: SQL Server не может вызывать методы на дату

person Marek Grzenkowicz    schedule 05.04.2011
comment
Кто-нибудь знает, в чем причина этого? Все ссылки на источники не работают. - person NickG; 02.05.2017
comment
@NickG Я обновил ссылки. Это все еще проблема в более поздних версиях SQL Server? Кроме того, проверьте stackoverflow.com/q/16180347/95 связанную проблему. - person Marek Grzenkowicz; 02.05.2017
comment
В моем случае оказалось, что у меня была точка вместо запятой между именами полей в операторе выбора, что может вызвать такое же сообщение об ошибке в SQL 2016. - person NickG; 02.05.2017
comment
Как и у NickG, у меня была ошибочная опечатка, которая давала эту ошибку, а не что-то более точное. У меня была конструкция ROW_NUMBER(), где автозамена заменила имя столбца Description на порядок сортировки DESC в следующем... ROW_NUMBER() OVER (ORDER BY MyTable.MyColumn DESC) Я видел это (с Description, где я показал здесь DESC), и на автопилоте stpuid я добавил точка, поэтому у меня было MyTable.MyColumn.Description. Это дало ошибку, связанную с методами bigint. На всякий случай кому поможет. - person KeithFearnley; 13.03.2018
comment
Настоящая ошибка в моем случае: CAST(... AS bigint) выдает сообщение об ошибке, тогда как CAST(... AS int) работает нормально! - person Matthew Slyman; 27.05.2019