powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как найти строки на которых вылетает запрос?
6 сообщений из 6, страница 1 из 1
Как найти строки на которых вылетает запрос?
    #38828319
iva77ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (X64) Jun 17 2011 00:54:03 Copyright (c) Microsoft Corporation Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

SELECT f._Code AS EMP_ID, f._Description AS EMP_NAME, d._Fld6938 AS DOC_BARCODE, d._Fld6940 AS SAP_XHDOC, d._Fld6941 AS DOC_NUM,
CASE WHEN d .[_Fld6942] = '2001.01.01' OR
d .[_Fld6942] IS NULL THEN NULL ELSE dateadd(yy, - 2000, d .[_Fld6942]) END AS DOC_DATE, CASE WHEN d .[_Fld6943] = '2001.01.01' OR
d .[_Fld6943] IS NULL THEN NULL ELSE dateadd(yy, - 2000, d .[_Fld6943]) END AS PERIOD_BEGIN, CASE WHEN d .[_Fld6944] = '2001.01.01' OR
d .[_Fld6944] IS NULL THEN NULL ELSE dateadd(yy, - 2000, d .[_Fld6944]) END AS PERIOD_END, dt._Description AS DOC_TYPE,
o._Description AS ORGANIZATION
FROM dbo._InfoRg6935 AS d WITH (NOLOCK) INNER JOIN
dbo._Reference84 AS f ON d._Fld6936RRef = f._IDRRef INNER JOIN
dbo._Reference6932 AS dt ON d._Fld6948RRef = dt._IDRRef LEFT OUTER JOIN
dbo._Reference47 AS o ON d._Fld7058 = o._Code

Ошибка:
Msg 517, Level 16, State 1, Line 2
Adding a value to a 'datetime' column caused an overflow.

Помогите, пожалуйста, найти сбойные строки!
...
Рейтинг: 0 / 0
Как найти строки на которых вылетает запрос?
    #38828326
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iva77ru, минимальное значение типа datetime это 1 января 1753 года, а вы пытаетесь сразу 2000 лет отнять
...
Рейтинг: 0 / 0
Как найти строки на которых вылетает запрос?
    #38828332
iva77ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все правильно. База 1С. При создании базы все даты сдвинуты на 2000.
...
Рейтинг: 0 / 0
Как найти строки на которых вылетает запрос?
    #38828333
Фотография Shakill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iva77ruВсе правильно. База 1С. При создании базы все даты сдвинуты на 2000.
в этом месте вы сами можете сделать вывод что ошибочными будут все записи, в которых хотя бы одно из полей меньше чем 1 января 3753
...
Рейтинг: 0 / 0
Как найти строки на которых вылетает запрос?
    #38828596
LexusR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
select * FROM dbo._InfoRg6935 d
where d .[_Fld6942] < '2001.01.01' 
    OR d .[_Fld6943] < '2001.01.01' 
    OR d .[_Fld6944] < '2001.01.01' 
...
Рейтинг: 0 / 0
Как найти строки на которых вылетает запрос?
    #38829821
iva77ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо "LexusR "! То, что нужно!
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как найти строки на которых вылетает запрос?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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