Как я могу заставить свои объекты EF4 использовать тип datetime2 с SQL Server CE 3.5? - PullRequest
0 голосов
/ 07 декабря 2010

Я хотел бы сохранить значения DateTime с использованием типа datetime2 в SQL Server CE 3.5.

Если это возможно, как бы я изменил свою модель данных сущностей? Я попытался отредактировать его вручную, и Visual Studio впоследствии отказывается показывать его в конструкторе.

Ответы [ 2 ]

2 голосов
/ 08 декабря 2010

datetime2 не существует в SQL Server Compact, чтобы сохранить значения datetime2, необходимо сохранить значение nvarchar (27) в форме «ГГГГ-ММ-ДД чч: мм: ss.nnnnnnn» (см. http://msdn.microsoft.com/en-us/library/ms171931.aspx)

1 голос
/ 12 апреля 2013

Если вы позаботитесь о размере вашей базы данных (особенно если у вас есть индексы в этом поле), вы можете использовать другой подход.

Сохранить в базе данных два поля datetime (для ГГГГ-ММ-ДД чч: мм: сс ) и smallint (для * миллисекунд * 1 010).И присоединитесь к ним, чтобы получить правильный DateTime перед отображением в пользовательском интерфейсе.

В этом случае размер этих полей будет 10 байтов (согласно этому источнику , 8 байтов datetime + 2 байта для smallint).Размер nvarchar (27) составляет 54 байта.

...