- •25. Программный модуль
- •26Указатели в Паскале. Динамическая память на языке Паскаль
- •Ссылочные типы. Указатели в Паскале
- •Операции с указателями
- •Процедуры и функции для работы с указателями и адресами в Паскале
- •27. Динамические структуры данных | Связные списки
- •1 Связное представление данных в памяти
- •2 Связные линейные списки
- •2.1 Машинное представление связных линейных списков
- •2.2 Реализация операций над связными линейными списками
- •3. Нелинейные разветвленные списки
- •3.1 Основные понятия
- •3.2 Представление списковых структур в памяти.
- •3.3 Операции обработки списков
- •28. Стек и очередь
- •29. Системы программирования
- •30. Языки программирования
- •33. Накопители на гибких магнитных дисках
- •35Видеосистема персонального компьютера.
- •История
- •Технический обзор
- •Новые возможности по сравнению с Си
- •Не объектно-ориентированные возможности
- •Стандартная библиотека
- •Объектно-ориентированные особенности языка
- •Проблемы старого подхода
- •Инкапсуляция
- •Описание функций в теле класса
- •Конструкторы и деструкторы
- •Другие возможности функций-членов
- •Наследование
- •Полиморфизм
- •Будущее развитие
- •История названия
- •Пример №1
- •Пример №2
- •Пример №3
- •Пример №4
- •Описание и инициализация переменных
- •Int k; // это переменная целого типа int
- •Задание и использование констант
- •Описание и инициализация переменных
- •Int k; // это переменная целого типа int
- •Задание и использование констант
- •5.3.1. Символьные типы
- •5.3.2. Числовые типы
- •5.3.3. Типы дата/время
- •5.3.4. Двоичные типы
- •5.3.5. Пользовательские типы данных
- •2. [Проверка домашнего задания]
- •3. Актуализация знаний и умений учащихся по пройденному материалу
- •5. Реализация, составление алгоритмов с использованием повторения. Графика в программе Паскаль авс.
- •6. Ребус. Правильная осанка
- •9*. Тестирование
- •Операции над строками
- •Операции над строками
- •2. Объединения
- •Комбинированные типы. Записи
- •Обработка записей в Паскале
- •Оператор присоединения в Паскале
- •Вввод / вывод записей в Паскале
- •Примеры программ
5.3.3. Типы дата/время
Типы дата/время предназначены для хранения времени, дат и дат совместно с временем. Такие типы, поддерживаемые СУБД SQL Anywhere, перечислены в табл. 10.
Таблица 10. Перечень типов дата/время
Тип данных |
Назначение |
Размер |
DATE |
Тип для представления даты в виде совокупности года, месяца и числа. Значение года может изменяться в диапазоне от 0001 до 9999 года |
4 байта |
TIME |
Тип для представления времени в виде совокупности часа, минут, секунд и долей секунд. Доли секунд хранятся с точностью до 6 знаков. |
8 байт |
TIMESTAMP |
Тип для представления момента времени конкретной даты. Данные хранятся в виде совокупности года, месяца, числа, часа, минут, секунд и долей секунд. Доли секунд хранятся с точностью до 6 знаков. |
8 байт |
DATETIME |
Тоже, что и TIMESTAMP |
|
SMALLDATETIME |
Тоже, что и TIMESTAMP |
|
Обмен данными типа дата/время с базами данных производится:
в формате структуры TIMESTAMP при использовании интерфейса ODBC;
в формате структуры SQLDATETIME, если взаимодействие приложений с СУБД осуществляется через интерфейс Embedded SQL (см. рис. 1);
через строку символов в других случаях.
В первых двух случаях все компоненты данных типа дата/время записываются в свои поля. В результате этого достигается однозначное представление информации. При использовании строки формат данных типа дата/время определяется такими параметрами баз данных как DATA_FORMAT, DATA_ORDER, TIME_FORMAT и TIMESTAMP_FORMAT. Различные сочетания этих параметров порождают большое число вариантов форматов. Однако это не должно вызывать особого беспокойства. Параметры базы данных устанавливаются для всей базы данных и действуют на все приложения и всех пользователей. Форматы данных типа дата/время, определяемые вышеуказанными параметрами баз данных по умолчанию, представлены в табл. 11.
Таблица 11. Форматы представления данных типа дата/время, определяемые по умолчанию
Тип данных |
Формат, используемый по умолчанию |
DATE |
'YYYY-MM-DD' |
TIME |
'HH:NN:ss.SSS' |
TIMESTAMP |
'YYYY-MM-DD HH:NN:ss.SSS' |
DATETIME |
'YYYY-MM-DD HH:NN:ss.SSS' |
SMALLDATETIME |
'YYYY-MM-DD HH:NN:ss.SSS' |
В табл. 11 используются следующие сокращения:
YYYY - четыре цифры , обозначающие год:
MM - две цифры , обозначающие месяц:
DD - две цифры , обозначающие день:
HH - две цифры , обозначающие часы:
NN - две цифры , обозначающие минуты:
ss - две цифры , обозначающие секунды:
SSS - три цифры , обозначающие доли секунд.
По умолчанию составляющие времени HH, NN, ss, SSS принимаются равными нулю, а DD - единице. Содержимое строк, представляющие данные типа дата/время , конвертируются автоматически. Некоторые примеры такого преобразования приведены в табл. 12.
Таблица 12. Примеры преобразования типов дата/время
Тип данных |
Содержимое строки |
Результат преобразования |
DATE |
'1994-06-08' '1994-06' '1994-' '1994' |
'1994-06-08' '1994-06-01' Ошибка преобразования Ошибка преобразования |
TIME |
'19:50:25.136777' '19:50:25' '19:50' '19:' '19' |
'19:50:25.136' '19:50:25.000' '19:50:00.000' '19:50:00.000' Ошибка преобразования |
TIMESTAMP |
'1994-06-08 19:50:25.136777' '1994-06 19:50' '1994-06' |
'1994-06-08 19:50:25.000' '1994-06-01 19:50:00.000' '1994-06-01 00:00:00.000' |
К сказанному следует добавить, что к данным типа дата/время применимы арифметические операции, перечень которых представлен в табл. 13.
Таблица 13. Арифметические операции, применимые к данным типов дата/время
Тип первого операнда |
Операция |
Тип второго операнда |
Тип результата |
Примечание |
DATE |
+ (-) |
INTEGER |
DATE |
Увеличивает (Уменьшает) значение даты на целое количество дней |
TIMESTAMP |
+ (-) |
INTEGER |
TIMESTAMP |
Увеличивает (Уменьшает) значение даты на целое количество дней |
DATE |
+ |
TIME |
TIMESTAMP |
Формирует из исходных операндов значение типа TIMESTAMP |
DATE |
- |
DATE |
INTEGER |
Определяет разницу в днях между значения дат исходных операндов |
DATE |
- |
TIMESTAMP |
INTEGER |
Определяет разницу в днях между значения дат исходных операндов |
TIMESTAMP |
- |
DATE |
INTEGER |
Определяет разницу в днях между значения дат исходных операндов |
TIMESTAMP |
- |
TIMESTAMP |
INTEGER |
Определяет разницу в днях между значения дат исходных операндов |