DATE Type
Тип date реализуется с помощью число с плавающей запятой длиной 8 байт. Дни представлены в виде целого числа, начиная с шагом 30-ое декабря 1899, полночью как время равно нулю. Выражаются значения часов как абсолютное значение дробной части числа. В следующей таблице показано несколько дат вместе с числом типа date числовой.
Дата и время |
Представление |
---|---|
В полночь 30-ое декабря 1899. |
0.00 |
В полночь 1-ое января 1900. |
2.00 |
В полночь 4-ое января 1900. |
5.00 |
4-ое января 1900, 6.. |
5.25 |
4-ое января 1900, Полдень |
5.50 |
4-ое января 1900, 9.. |
5.875 |
Тип даты date, а также класс COleDateTime, представляющие значения даты и времени в виде классическая линия числа. Класс COleDateTime содержит несколько методов для управления значениями ДАТЫ, включая преобразование к службе и от других стандартных форматов даты.
Следующие элементы должны быть указаны при работе с этими форматами даты и времени в автоматизации.
Даты, указанные в локальном времени; синхронизация должна запускаться вручную при работе с датами в разных часовых поясах.
Типы даты не определяют время сохранения дневного света.
Временная шкала даты будет прерывной для значений даты, чем 0 (до 30-ого декабря 1899). Это происходит потому, что целой части значения даты обрабатывается как подписано, а дробная часть обрабатывается как он вообще не подписан. Иначе говоря, целой части значения типа может быть положительна или отрицательна, а дробная часть значения даты всегда добавлена к общей логически дате. В следующей таблице показано несколько примеров:
Дата и время |
Представление |
---|---|
В полночь 27-ое декабря 1899. |
-3.00 |
28-ое декабря 1899, Полдень |
-2.50 |
В полночь 28-ое декабря 1899. |
-2.00 |
В полночь 29-ое декабря 1899. |
-1.00 |
30-ое декабря 1899 Ь часов вечера.. |
-0.75 |
30-ое декабря 1899, Полдень |
-0.50 |
30-ое декабря 1899, 6.. |
-0.25 |
В полночь 30-ое декабря 1899. |
0.00 |
30-ое декабря 1899, 6.. |
0.25 |
30-ое декабря 1899, Полдень |
0.50 |
30-ое декабря 1899 Ь часов вечера.. |
0.75 |
В полночь 31-ое декабря 1899. |
1.00 |
В полночь 1-ое января 1900. |
2.00 |
1-ое января 1900, Полдень |
2.50 |
В полночь 2-ое января 1900. |
3.00 |
Предупреждение
Обратите внимание, что поскольку 6:00 AM всегда представляется частичным значение 0,25, независимо от того, является целое число, представляющее день положительным (после 30-ого декабря 1899) или минус (до 30-ого декабря 1899), простое сравнение с плавающей запятой сортироватьTfо ошибочно любой date, представляющий 6:00 AM on день ранее в виде 12/30/1899 позже, чем date, представляющий 7:00 AM на этом тот же день.
Дополнительные сведения о проблемах, связанных с типами date и COleDateTime можно найти в COleDateTime Class и Date and Time: Automation Support.