|
|
Следующие шаги показывают, как преобразовать тип данных TIMESTAMP из InterBase формата в формат C; те же самые шаги используются, чтобы преобразовать типы данных TIME И DATE. Начиная с InterBase 6, тип данных TIMESTAMP заменяет старый тип данных DATE, используемый в более ранних версиях . Для выборки timestamp из таблицы, и преобразовывания его к форме пригодной для использования в C программах, следуют этими шагами: 1. Создайте переменную для C time структуры. Большинство C и систем разработки программ C++ обеспечивает тип, structtm, для Ctime структур в time.h файле заголовка. Следующий код C включает этот файл заголовка, и объявляет переменную типа structtm: #include <time.h> #include <ibase.h> . . . struct tm entry_time; . .. 2. Создайте переменную типа ISC_TIMESTAMP. ISC_TIMESTAMP entry_date;
ISC_TIMESTAMP это структура объявленная в ibase.h.
3. Получите данные из таблицы в переменную типа ISC_TIMESTAMP 4. Преобразуйте эту переменную в числовой формат C с помощью InterBase функции isc_sql_decode_timestamp(). Она также обвялена в ibase.h, и она требует двух параметров, адреса переменной типа ISC_TIMESTAMP, и адреса structtm переменной. Например, следующий фрагмент кода преобразует entry_date к entry_time: isc_decode_timestamp(&entry_date,&entry_time); Преобразование даты из формата Св формат InterBase 1. Создайте переменную для С time структуры. #include <time.h>; . . . struct tm entry_time; . .. 2. Создайте переменную типа ISC_TIMESTAMP для использования InterBase. ISC_TIMESTAMP mytime; 3. Запишите дату в entry_time. 4. Используйте функцию isc_encode_sql_date() для преобразования entry_time в mytime. isc_encode_timestamp(&entry_time,&entry_date); 5. И выполните вставку даты в таблицу
|
Дизайн: Piton Alien |