Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Сервер не принимает N'29.10.2017' для поля типа дата  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1067
select @@version
-- Microsoft SQL Server 2012 (SP3) (KB3072779) - 11.0.6020.0 (X64)   Oct 20 2015 15:36:27   Copyright (c) Microsoft Corporation  Standard Edition (64-bit) on Windows NT 6.3 <X64> (Build 15063: ) 


профайлер говорит что уходит вот это

exec sp_executesql N'select  a.id
                                                    ,a.flightNo flightno
                                                    ,a.name afml
                                                    ,isnull(pf.name,'''')+isnull('' (''+pf.IcaoCode+'')'','''') placefrom
                                                    ,isnull(pt.name,'''')+isnull('' (''+pt.IcaoCode+'')'','''') placeto
                                                    ,a.date
                                                    ,(select count(1) from loglistattachment lla where lla.list=a.id) acount
                                            from afml a
                                            left join mainFlight ls on ls.afml=a.id 
                                            left join places pf on pf.id=ls.place_from
                                            left join places pt on pt.id=ls.place_to
                                            where 1=1 
                                                and a.date between @dateFrom and @dateTo
                                                and a.MSN=@ac
                                            order by a.date desc,ls.id desc',N'@ac nvarchar(1),@dateFrom nvarchar(10),@dateTo nvarchar(10)',@ac=N'6',@dateFrom=N'29.10.2017',@dateTo=N'17.11.2017'
go


ошибку вываливает IIS
Conversion failed when converting date and/or time from character string.
17 ноя 17, 12:50    [20963253]     Ответить | Цитировать Сообщить модератору
 Re: Сервер не принимает N'29.10.2017' для поля типа дата  [new]
waszkiewicz
Member

Откуда:
Сообщений: 1067
waszkiewicz,
на
Microsoft SQL Server 2012 - 11.0.2100.60 (X64)
Feb 10 2012 19:39:15
Copyright (c) Microsoft Corporation
Express Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

то же приложение работает
17 ноя 17, 12:53    [20963262]     Ответить | Цитировать Сообщить модератору
 Re: Сервер не принимает N'29.10.2017' для поля типа дата  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 36686
waszkiewicz
dateFrom nvarchar(10),@dateTo nvarchar(10)
Для даты и времени есть специальный тип данных.
waszkiewicz
@dateFrom=N'29.10.2017',@dateTo=N'17.11.2017'
Для строковых литералов, содержащих дату, есть свои правила.
17 ноя 17, 12:53    [20963265]     Ответить | Цитировать Сообщить модератору
 Re: Сервер не принимает N'29.10.2017' для поля типа дата  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1172
waszkiewicz,

пишите дату в нормальном формате.
17 ноя 17, 12:54    [20963267]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить