2015-09-02 5 views
1

Im пытается вставить Checkout Date в формате dd/mm/yyyy hh:mi:ss с помощью следующего запроса:Вставить дату системы в дд/мм/гггг чч: ми: сс

insert into Rawtransactions  
(Card Number,Processing Date,CurrencyCode,Checkout Date  
)  

Values  
(  
@NewCardNumber,getdate(),'USD',CONVERT(VARCHAR(24),GETDATE(),113)  
)  

Но он вставляется дата в этом формате 02 Sep 2015 14:45:09:390 вместо 02/09/2015 14:45:09:390. Какой правильный синтаксис для этого?

EDITED - Обратите внимание: Checkout Date является полем nvarchar и теперь может быть изменен Chema. Я хочу знать, как я могу вставить дату в это поле?

+0

Каков тип поля «Дата выписки»? (It * должен * быть Datetime или аналогичным. Не хранить значения даты/времени в виде строк - это не закончится хорошо.) –

+0

@JonSkeet Свой nvarchar – Nuke

+2

Ick. Вы все еще можете изменить его? Это очень плохая идея *, чтобы сделать это ... –

ответ

0

Попробуйте так:

select CONVERT(VARCHAR(10), GETDATE(), 103) + ' ' + convert(VARCHAR(8), GETDATE(), 14) 

Однако не рекомендуется хранить даты как varchar() как это может привести вас к некоторым вопросам форматирования, как это в будущем.

+0

И это заставляет боль работать с данными, например. для выполнения рядовых запросов ... –

+0

@JonSkeet: - Согласовано. Существует много недостатков хранения дат как «varchar()», включая вычитание или добавление дат и многое другое. И, насколько я понял, варчар - тоже культура. –

0

Даты - это даты. Вы не можете контролировать формат, в котором хранится база данных; это просто значения с типом данных даты. Если вы хотите использовать их позже в приложении и отобразить их определенным образом, это зависит от вашего приложения.

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