Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Каждый из типов данных интервала C, перечисленных в разделе типов данных C, использует ту же структуру для хранения данных интервала. При вызове SQLFetch, SQLFetchScroll или SQLGetData драйвер возвращает данные в структуру SQL_INTERVAL_STRUCT, использует значение, указанное приложением для типов данных C (в вызове SQLBindCol, SQLGetData или SQLBindParameter), чтобы интерпретировать содержимое SQL_INTERVAL_STRUCT, и заполняет поле interval_type структуры значением перечисления, соответствующим типу C. Обратите внимание, что драйверы не считывают поле interval_type для определения типа интервала; они извлекают значение поля дескриптора SQL_DESC_CONCISE_TYPE. Если структура используется для данных параметров, драйвер использует значение, указанное приложением в поле SQL_DESC_CONCISE_TYPE APD, чтобы интерпретировать содержимое SQL_INTERVAL_STRUCT, даже если приложение задает значение поля interval_type другим значением.
Эта структура определена следующим образом:
typedef struct tagSQL_INTERVAL_STRUCT
{
SQLINTERVAL interval_type;
SQLSMALLINT interval_sign;
union {
SQL_YEAR_MONTH_STRUCT year_month;
SQL_DAY_SECOND_STRUCT day_second;
} intval;
} SQL_INTERVAL_STRUCT;
typedef enum
{
SQL_IS_YEAR = 1,
SQL_IS_MONTH = 2,
SQL_IS_DAY = 3,
SQL_IS_HOUR = 4,
SQL_IS_MINUTE = 5,
SQL_IS_SECOND = 6,
SQL_IS_YEAR_TO_MONTH = 7,
SQL_IS_DAY_TO_HOUR = 8,
SQL_IS_DAY_TO_MINUTE = 9,
SQL_IS_DAY_TO_SECOND = 10,
SQL_IS_HOUR_TO_MINUTE = 11,
SQL_IS_HOUR_TO_SECOND = 12,
SQL_IS_MINUTE_TO_SECOND = 13
} SQLINTERVAL;
typedef struct tagSQL_YEAR_MONTH
{
SQLUINTEGER year;
SQLUINTEGER month;
} SQL_YEAR_MONTH_STRUCT;
typedef struct tagSQL_DAY_SECOND
{
SQLUINTEGER day;
SQLUINTEGER hour;
SQLUINTEGER minute;
SQLUINTEGER second;
SQLUINTEGER fraction;
} SQL_DAY_SECOND_STRUCT;
Поле interval_type SQL_INTERVAL_STRUCT указывает приложению, какая структура хранится в союзе, а также какие члены структуры имеют отношение. Поле interval_sign имеет значение SQL_FALSE, если начальное поле интервала не назначено; если оно SQL_TRUE, то в начале поле отрицательное значение. Значение в самом начале поля всегда без знака независимо от значения interval_sign. Поле interval_sign выступает в качестве бита знака.