Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Странная проблема с датой / 12 сообщений из 12, страница 1 из 1
27.03.2018, 07:50
    #39620878
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
Добрый день!

Столкнулся с проблемой: по запросу из MS SQL получаем дату 20-апр-1900, а в SqlDataReader, в приложении, возвращает дату уже с 2000 годом!

Почему так происходит? И как поправить?
...
Рейтинг: 0 / 0
27.03.2018, 08:32
    #39620887
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
saszay,
Дай dml таблы и код
...
Рейтинг: 0 / 0
27.03.2018, 08:40
    #39620888
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
Таблица
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE TABLE [dbo].[Kod_Desc](
	[koID] [bigint] NOT NULL,
	[kodDate] [datetime] NOT NULL,
	[kodDesc] [nvarchar](1024) NULL,
	[kodPrice] [money] NULL,
	[usID] [smallint] NOT NULL,
	[ID] [int] IDENTITY(-2147483648,1) NOT NULL,
 CONSTRAINT [PK_Kod_Desc] PRIMARY KEY NONCLUSTERED 
([ID] ASC) WITH (PAD_INDEX = ON, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, FILLFACTOR = 90) ON [PRIMARY]
)



Запрос
Код: sql
1.
SELECT * FROM Kod_Desc WHERE koID = -9223372036854490735;
...
Рейтинг: 0 / 0
27.03.2018, 08:50
    #39620891
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
Запрос в самой программе:
Код: c#
1.
CpsDateTime(DataBinder.Eval(__e.Item.DataItem, "kodDate"))
...
Рейтинг: 0 / 0
27.03.2018, 09:39
    #39620914
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
saszay,
На этот код тебе уже отвечали))).
Цель твоего поста?
...
Рейтинг: 0 / 0
27.03.2018, 09:41
    #39620915
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
Petro123saszay,
На этот код тебе уже отвечали))).
Цель твоего поста?

Не понял
...
Рейтинг: 0 / 0
27.03.2018, 09:52
    #39620922
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
saszay,
У тебя повтор темы. Что не понял?
...
Рейтинг: 0 / 0
27.03.2018, 10:11
    #39620945
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
Увидел, но решения так и нет...
...
Рейтинг: 0 / 0
27.03.2018, 16:24
    #39621345
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
saszay,

Тип даты/времени в SQL какой? Выбирайте всегда DateTime2.
...
Рейтинг: 0 / 0
27.03.2018, 16:30
    #39621357
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
hVosttsaszay,

Тип даты/времени в SQL какой? Выбирайте всегда DateTime2.

Просто datetime. Мне достаточна его точность. И SQL выводит всё правильно, а клиент уже что-то сам меняет
...
Рейтинг: 0 / 0
27.03.2018, 18:12
    #39621500
hVostt
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
saszayhVosttsaszay,

Тип даты/времени в SQL какой? Выбирайте всегда DateTime2.

Просто datetime. Мне достаточна его точность. И SQL выводит всё правильно, а клиент уже что-то сам меняет

Не важно, достаточна вам его или нет точность. Для правильной работы с датой временем из .NET нужно выбирать DateTime2.

Вот из MSDN

MSDNUse the time, date, datetime2 and datetimeoffset data types for new work. These types align with the SQL Standard. They are more portable. time, datetime2 and datetimeoffset provide more seconds precision. datetimeoffset provides time zone support for globally deployed applications.


Вы спросили как решать, вот ответ. Что ещё нужно?
...
Рейтинг: 0 / 0
28.03.2018, 05:13
    #39621654
saszay
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Странная проблема с датой
[quot hVostt]saszayпропущено...


Вы спросили как решать, вот ответ. Что ещё нужно?

Т.е. если у меня MS SQL 2005 то проблема не решается? Чтобы клиент правильно показывал дату, мне нужно сменить сервер? И если речь шла о секундах (или нано секунд), ещё бы можно было понять. Но речь идёт о годах, причём не сильно далёких...

На своём примере я изменил запрос и он стал возвращать
Код: sql
1.
CAST(kodDate As datetime2)

, но проблему это не решило...
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Странная проблема с датой / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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