2016-12-05 2 views
0

У меня есть таблица, в которой AccessDate столбец имеет тип datetime. И я пытаюсь сделать что-то вроде этого:SQL SERVER - Ошибка преобразования даты

SELECT 'AccessDate' UNION ALL SELECT AccessDate FROM table_name 

Я пытаюсь вставить заголовок таблицы «AccessDate» в результате запроса. И эта ошибка появляется после выполнения:

Ошибка конверсии при преобразовании даты и/или времени из символьной строки.

Может кто-нибудь помочь мне в этом? Спасибо.

+1

столбцы должны иметь один и тот же тип данных при использовании 'union'. один - char, а другой - datetime в вашем примере. –

+0

Так листинг AccessDate для VARCHAR будет поддерживать формат, используемый datetime? –

+0

security -> logins-> youruser right click - свойства и проверка языка по умолчанию. Потому что, если вы используете другой язык, он дает эту ошибку. – fable

ответ

5

Не удивительно. Кажется, вам нужна дата в столбце, где уже есть символ. Вам необходимо преобразовать дату в строку:

SELECT 'AccessDate' UNION ALL 
SELECT CONVERT(VARCHAR(10), AccessDate, 121) 
FROM table_name; 

Вы можете использовать любой формат, который вам нравится. Я предпочитаю ГГГГ-ММ-ДД.

Смежные вопросы