powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с форматом дат при вставке
4 сообщений из 4, страница 1 из 1
Проблема с форматом дат при вставке
    #32026559
Makar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа!

Кто знает, каковы могут быть причины ошибки
The conversion of char data type to smalldatetime data type resulted in an out-of-range smalldatetime value.
При выполнении оператора вставки
INSERT INTO "Table1"("BeginDate", "ClassId", "EndDate", "XXXXXXX", "YYYYY", "Name", "NodeId") VALUES ('2001-01-01', 86, '2001-12-31', 148210, 0, 'XXXXXXX1', 148215)

BeginDate & EndDate, как Вы поняли, типа smalldatetime
...
Рейтинг: 0 / 0
Проблема с форматом дат при вставке
    #32026572
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1.
SET DATEFORMAT ymd
INSERT INTO "Table1"("BeginDate", "ClassId", "EndDate", "XXXXXXX", "YYYYY", "Name", "NodeId") VALUES ('2001-01-01', 86, '2001-12-31', 148210, 0, 'XXXXXXX1', 148215)

2.
INSERT INTO "Table1"("BeginDate", "ClassId", "EndDate", "XXXXXXX", "YYYYY", "Name", "NodeId") VALUES ('20010101', 86, '20011231', 148210, 0, 'XXXXXXX1', 148215)
...
Рейтинг: 0 / 0
Проблема с форматом дат при вставке
    #32026573
Makar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Большое спасибо за совет, но проблема в том, что есть две похожих машины, на них MSDE, и две базы, одинаковых по структуре, разные по наполнению, и вот - в одном случае команда
INSERT INTO "Table1"("BeginDate", "ClassId", "EndDate", "XXXXXXX", "YYYYY", "Name", "NodeId") VALUES ('2001-01-01', 86, '2001-12-31', 148210, 0, 'XXXXXXX1', 148215)
проходит, а в другом - ошибка.
По-видимому есть какая то зависимость от системных настроек, но каких???
Региональные стандарты и win.ini в части настроек дат - одинаковые.
Что еще?
...
Рейтинг: 0 / 0
Проблема с форматом дат при вставке
    #32026574
Glory
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю что у вас там одинаково или нет, но вот скрипт

declare @x smalldatetime

set dateformat ymd
set @x = '2001-12-31'
select @x
go

declare @x smalldatetime
set dateformat dmy
set @x = '2001-12-31'
select @x

второй batch которого выдает такую же ошибку. Ищите.
Или мой вам совет переходите на символьное представление даты вида yyyymmdd hh:mm:ss

declare @x smalldatetime

set dateformat myd
set @x = '20011231'
select @x
go

declare @x smalldatetime
set dateformat dmy
set @x = '20011231'
select @x
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблема с форматом дат при вставке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]