Назад | Перейти на главную страницу

Переполнение при преобразовании int в datetime

В настоящее время я импортирую таблицу из MYSQL в MSSQL. Там есть столбец для хранения даты, только он хранится в виде числа. Когда я импортирую его в MSSQL, я получаю его как тип данных int.

Когда я пытаюсь преобразовать это в datetime, я получаю:

Ошибка арифметического переполнения при преобразовании выражения в тип данных datetime.

Поскольку я использую MSSQL 2005, я не могу использовать datetime2 и подогнать его, чтобы он не переполнялся.

Есть ли способ обрезать эту дату, хранящуюся как int, чтобы она не переполняла формат datetime?

MSSQL дата и время Тип данных может принимать значения с 1 января 1753 г. по 31 декабря 9999 г. Целочисленные эквиваленты этих значений - -53690 и 2958463 соответственно. Попытка преобразовать целочисленные значения вне этого диапазона приведет к арифметическому переполнению.