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

Откуда:
Сообщений: 405
Здрасти! Данные (дата и время) сохраняются в таблице с типом nvarchar, при попытке преобразовать данные дает ошибку: "The conversion of a nvarchar data type to a datetime data type resulted in an out-of-range value." Подскажите в чем может быть причина ошибки?
12 июн 12, 15:26    [12702671]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
У функции CONVERT еще есть и третий параметр.
12 июн 12, 15:31    [12702698]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
temoxa
Member

Откуда:
Сообщений: 405
Спасибо!
12 июн 12, 15:42    [12702744]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
temoxa
Member

Откуда:
Сообщений: 405
Преобразовать получилось! А вот после преобразования получился результат дата + время! А мне необходимо организовать поиск только по дате! Есть ли какие-нибудь решения?
12 июн 12, 15:59    [12702849]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Задавать в условиях поиска диапазон дат без времени.
12 июн 12, 16:01    [12702860]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
temoxa
Member

Откуда:
Сообщений: 405
а как это выглядит? примерчик можно?
12 июн 12, 16:04    [12702882]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Например, данные за вчера:

SomeField >= '20120611' AND SomeField < '20120612'


Плохо, что у Вас придеться применять функцию к полю и об использовании индекса придется забыть.
12 июн 12, 16:08    [12702910]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
temoxa
Member

Откуда:
Сообщений: 405
Скажите, а почему поиск происходит строго в формате 20120612? Просто у меня в отчете дата будет формироваться в виде 01.01.2012? Это можно реализовать? Или никак?
12 июн 12, 17:01    [12703235]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74930
Формат YYYYMMDD (ISO) SQL Server трактует всегда однозначно, вне зависимости от дефолтного языка логина.
12 июн 12, 17:03    [12703259]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
SunJun
Member

Откуда:
Сообщений: 135
convert(varchar(10),yourDate,120)
13 июн 12, 09:57    [12705789]     Ответить | Цитировать Сообщить модератору
 Re: преобразование nvarchar в datetime  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3754
SunJun
convert(varchar(10),yourDate,120)

не надо
13 июн 12, 11:47    [12706578]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить