преобразование smalldatetime

#sql-server #ruby

#sql-сервер #ruby

Вопрос:

как мне преобразовать объект Time в Ruby в строку, которая может быть преобразована в smalldatetime поле Sqlserver без потери информации о TZ и DST (если это возможно)?

Спасибо

Ответ №1:

Smalldatetime по определению не содержит информации о TZ и DST. Смотрите http://msdn.microsoft.com/library/ms182418.aspx

Комментарии:

1. Хорошо, но я думаю, я мог бы добавить / вычесть часы в соответствии с TZ и DST. Я ошибаюсь?

2. @Simone — Если вам нужно сохранить информацию о TZ и DST, почему вы используете smalldatetime ? Сохраняйте простоту и используйте datetime или datetime2

3. @Tony хорошо, я думаю, правильное решение — обратиться к администратору базы данных, чтобы изменить тип поля.

4. @Simone — Да, я бы посмотрел, можно ли изменить тип данных. Хотя данные будут занимать больше места (если smalldatetime была выбрана причина экономии места), вы потеряете это преимущество, поскольку вам также придется хранить информацию о TZ и DST. Кроме того, с smalldatetime временная часть указана с точностью до одной минуты; подходит ли это для вашего использования?

5. @Tony да, причина в пространстве (в этой таблице миллионы записей) и да, минута — это достаточно точно