Читаем Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ полностью

Формат Диалект 3 DATE Диалект 3 TIMESTAMP DATE
' CCYY-MM-DD' или 'YY-MM-DD' Сохраняет только дату Сохраняет дату и время в виде 00:00:00 Сохраняет дату и время в.виде 00:00:00
'MM/DD/CCYY' или 'MM/DD/YY' То же То же То же
'DD.MM.CCYY' или 'DD.MM.YY' То же То же То же
' DD-MMM-CCYY' или 'DD-MMM-YY' То же То же То же
'DD,MMM,CCYY' или ' DD,MMM,YY' То же То же То же
'DD MMM CCYY' или 'DD MMM YY' To же То же То же
'DDMMMCCYY' или 'DDMMMYY' To же То же То же

В элементе MMM также допустимы полные английские названия месяцев, нечувствительные к регистру. Правильные названия приведены в табл. 10.3

'CCYY-MM-DD HH:NN:SS.nnnn' или 'YY-MM-DD HH:NN:SS.nnnn' (элемент ".nnnn" необязателен) Сохраняет только дату; может потребовать преобразования для даты. Время не сохраняется Сохраняет дату и время Сохраняет дату и время
'MM/DD/CCYYHH:NN:SS.nnnn' или 'MM/DD/YY HH:NN:SS.nnnn' То же То же То же
' DD.MM.CCYYHH:NN:SS.nnnn' или 'DD.MM.YY HH:NN:SS.nnnn' То же То же То же
'DD-MMM-CCYY HH:NN:SS.nnnn' или 'DD-MMMYY HH:NN:SS.nnnn' То же То же То же

Типы TIMESTAMP в диалекте 3 и DATE в диалекте 1 принимают дату и время в литерале даты. Литерал даты без времени будет сохранен и с временем в виде ' 00: 00: 00'.

Тип DATE в диалекте 3 принимает только дату. Тип данных TIME принимает только время.

<p>"Скользящее окно века" в Firebird</p>

Независимо от того, как представлена часть года в литерале DATE или TIMESTAMP, в виде CCYY или YY, Firebird всегда сохраняет полное значение года. Он обращается к алгоритму получения части cc (столетие). Он также всегда включает столетие при поиске типов даты. Клиентские приложения отвечают за отображение года в виде двух или четырех цифр.

Для получения столетия Firebird использует алгоритм скользящего окна. Задача заключается в интерпретации двухсимвольного значения года как ближайшего к текущему году в интервале предшествующих и последующих 50 лет.

Например, если текущий год 2004, то двухсимвольные значения года будут интерпретироваться, как показано в табл. 10.3.

Таблица 10.3. Определение года по двухсимвольному виду, если текущим является 2004 год

Двухсимвольный год

Полученный год

Рассчитывается как

98

1998

(2004 - 1998 = 6) < (2998 - 2004 = 94)

00

2000

(2004 - 2000 = 4) < (2100 - 2004 = 96)

45

2045

(2004 - 1945 = 55) > (2045 - 2004 = 41)

50

2050

(2004 - 1950 = 54) > (2050 - 2004 = 46)

54

1954

(2004 - 1954 = 50) = (2054 - 2004 = 50)*

55

1955

(2004 - 1955 = 49) < (2055 - 2004 = 51)

* Кажущееся равенство в этом сравнении может ввести в заблуждение. 1954 год ближе к 2004, чем 2054, потому что все даты между 1954 и 1955 годами ближе к 2004, чем все даты между 2054 и 2055 годами.

<p>Разделители в неамериканских датах</p>

Ничто не вызывает больше затруднений для интернациональных пользователей, как ограничения в Firebird на использование наклонной черты (/) только для американского формата 'MM/DD/CCYY'. Хотя почти все другие страны используют формат 'DD/MM/CCYY', Firebird будет либо записывать неправильную дату, либо вызовет исключение для литерала даты, использующего соглашение 'DD/MM/CCYY'.

Например, литерал даты '12/01/2004' всегда будет сохраняться в смысле "1 декабря 2004 года", а '14/01/2004' вызовет исключение выхода за границы диапазона, потому что не существует месяца 14. Однако допускается 'CCYY/MM/DD': дата '2004/12/31' будет расшифровано как "31 декабря 2004 года".

Перейти на страницу:

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных