Timestamps and intervals manipulation


Detailed Description

OCILIB encapsulates Oracle :

Basically, the OCI_Timestamp and OCI_Interval routines are wrappers around the Oracle OCIDatetime and OCIInterval APIs

Examples
#include "ocilib.h"
 
#define SIZE_STR 260

int main(void)
{
    OCI_Timestamp *tm;
    OCI_Interval *itv;

    char str[SIZE_STR+1];
   
    if (!OCI_Initialize(NULL, NULL, OCI_ENV_DEFAULT))
        return EXIT_FAILURE;

    tm  = OCI_TimestampCreate(NULL, OCI_TIMESTAMP);
    itv = OCI_IntervalCreate(NULL, OCI_INTERVAL_DS);

    OCI_TimestampSysTimeStamp(tm);
    OCI_TimestampToText(tm, "DD/MM/YYYY HH24:MI:SS:FF3", SIZE_STR, str, 3);
    printf("%s\n", str);

    OCI_IntervalSetDaySecond(itv, 1,1,1,1,0);
    OCI_IntervalToText(itv, 10, 10, SIZE_STR, str);
    printf("%s\n", str);
   
    OCI_TimestampIntervalAdd(tm, itv);
    OCI_TimestampToText(tm, "DD/MM/YYYY HH24:MI:SS:FF3", SIZE_STR, str, 3);
    printf("%s\n", str);

    OCI_Cleanup();
 
    return EXIT_SUCCESS;
}


Functions

OCI_EXPORT OCI_Timestamp *OCI_API OCI_TimestampCreate (OCI_Connection *con, unsigned int type)
 Create a local Timestamp instance.
OCI_EXPORT boolean OCI_API OCI_TimestampFree (OCI_Timestamp *tmsp)
 Free an OCI_Timestamp handle.
OCI_EXPORT unsigned int OCI_API OCI_TimestampGetType (OCI_Timestamp *tmsp)
 Return the type of the given Timestamp object.
OCI_EXPORT boolean OCI_API OCI_TimestampAssign (OCI_Timestamp *tmsp, OCI_Timestamp *tmsp_src)
 Assign the value of a timestamp handle to another one.
OCI_EXPORT int OCI_API OCI_TimestampCheck (OCI_Timestamp *tmsp)
 Check if the given timestamp is valid.
OCI_EXPORT int OCI_API OCI_TimestampCompare (OCI_Timestamp *tmsp, OCI_Timestamp *tmsp2)
 Compares two timestamp handles.
OCI_EXPORT boolean OCI_API OCI_TimestampConstruct (OCI_Timestamp *tmsp, int year, int month, int day, int hour, int min, int sec, int fsec, const mtext *timezone)
 Set a timestamp handle value.
OCI_EXPORT boolean OCI_API OCI_TimestampConvert (OCI_Timestamp *tmsp, OCI_Timestamp *tmsp_src)
 Convert one timestamp value from one type to another.
OCI_EXPORT boolean OCI_API OCI_TimestampFromText (OCI_Timestamp *tmsp, const mtext *str, const mtext *fmt)
 Convert a string to a timestamp and store it in the given timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampToText (OCI_Timestamp *tmsp, const mtext *fmt, int size, mtext *str, int precision)
 Convert a timestamp value from the given timestamp handle to a string.
OCI_EXPORT boolean OCI_API OCI_TimestampGetDate (OCI_Timestamp *tmsp, int *year, int *month, int *day)
 Extract the date part from a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampGetTime (OCI_Timestamp *tmsp, int *hour, int *min, int *sec, int *fsec)
 Extract the time portion from a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampGetDateTime (OCI_Timestamp *tmsp, int *year, int *month, int *day, int *hour, int *min, int *sec, int *fsec)
 Extract the date and time parts from a date handle.
OCI_EXPORT boolean OCI_API OCI_TimestampGetTimeZoneName (OCI_Timestamp *tmsp, int size, mtext *str)
 Return the time zone name of a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampGetTimeZoneOffset (OCI_Timestamp *tmsp, int *hour, int *min)
 Return the time zone (hour, minute) portion of a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampIntervalAdd (OCI_Timestamp *tmsp, OCI_Interval *itv)
 Add an interval value to a timestamp value of a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampIntervalSub (OCI_Timestamp *tmsp, OCI_Interval *itv)
 Subtract an interval value from a timestamp value of a timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampSubtract (OCI_Timestamp *tmsp, OCI_Timestamp *tmsp2, OCI_Interval *itv)
 Store the difference of two timestamp handles into an interval handle.
OCI_EXPORT boolean OCI_API OCI_TimestampSysTimeStamp (OCI_Timestamp *tmsp)
 Stores the system current date and time as a timestamp value with time zone into the timestamp handle.
OCI_EXPORT boolean OCI_API OCI_TimestampToCTime (OCI_Timestamp *tmsp, struct tm *ptm, time_t *pt)
 Affect an OCI_Timestamp handle value to ISO C time datatypes.
OCI_EXPORT boolean OCI_API OCI_TimestampFromCTime (OCI_Timestamp *tmsp, struct tm *ptm, time_t t)
 Affect ISO C time datatypes values to an OCI_Timestamp handle.
OCI_EXPORT OCI_Interval *OCI_API OCI_IntervalCreate (OCI_Connection *con, unsigned int type)
 Create a local interval object.
OCI_EXPORT boolean OCI_API OCI_IntervalFree (OCI_Interval *itv)
 Free an OCI_Interval handle.
OCI_EXPORT unsigned int OCI_API OCI_IntervalGetType (OCI_Interval *itv)
 Return the type of the given Interval object.
OCI_EXPORT boolean OCI_API OCI_IntervalAssign (OCI_Interval *itv, OCI_Interval *itv_src)
 Assign the value of a interval handle to another one.
OCI_EXPORT int OCI_API OCI_IntervalCheck (OCI_Interval *itv)
 Check if the given interval is valid.
OCI_EXPORT int OCI_API OCI_IntervalCompare (OCI_Interval *itv, OCI_Interval *itv2)
 Compares two interval handles.
OCI_EXPORT boolean OCI_API OCI_IntervalFromText (OCI_Interval *itv, const mtext *str)
 Convert a string to an interval and store it in the given interval handle.
OCI_EXPORT boolean OCI_API OCI_IntervalToText (OCI_Interval *itv, int leading_prec, int fraction_prec, int size, mtext *str)
 Convert an interval value from the given interval handle to a string.
OCI_EXPORT boolean OCI_API OCI_IntervalFromTimeZone (OCI_Interval *itv, const mtext *str)
 Correct an interval handle value with the given time zone.
OCI_EXPORT boolean OCI_API OCI_IntervalGetDaySecond (OCI_Interval *itv, int *day, int *hour, int *min, int *sec, int *fsec)
 Return the day / time portion of an interval handle.
OCI_EXPORT boolean OCI_API OCI_IntervalGetYearMonth (OCI_Interval *itv, int *year, int *month)
 Return the year / month portion of an interval handle.
OCI_EXPORT boolean OCI_API OCI_IntervalSetDaySecond (OCI_Interval *itv, int day, int hour, int min, int sec, int fsec)
 Set the day / time portion if the given interval handle.
OCI_EXPORT boolean OCI_API OCI_IntervalSetYearMonth (OCI_Interval *itv, int year, int month)
 Set the year / month portion if the given Interval handle.
OCI_EXPORT boolean OCI_API OCI_IntervalAdd (OCI_Interval *itv, OCI_Interval *itv2)
 Adds an interval handle value to another.
OCI_EXPORT boolean OCI_API OCI_IntervalSubtract (OCI_Interval *itv, OCI_Interval *itv2)
 Subtract an interval handle value from another.


Function Documentation

OCI_EXPORT boolean OCI_API OCI_IntervalAdd ( OCI_Interval itv,
OCI_Interval itv2 
)

Adds an interval handle value to another.

Parameters:
itv - Interval handle from witch to add
itv2 - Interval handle to add
Returns:
TRUE on success otherwise FALSE

Definition at line 599 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalAssign ( OCI_Interval itv,
OCI_Interval itv_src 
)

Assign the value of a interval handle to another one.

Parameters:
itv - Destination interval handle
itv_src - Source interval handle
Returns:
TRUE on success otherwise FALSE

Definition at line 203 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

Referenced by OCI_ElemSetInterval(), and OCI_ObjectSetInterval().

OCI_EXPORT int OCI_API OCI_IntervalCheck ( OCI_Interval itv  ) 

Check if the given interval is valid.

Parameters:
itv - Interval handle
Returns:
  • Zero if the interval value is valid
  • Any other value means the interval value is invalid

Definition at line 233 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT int OCI_API OCI_IntervalCompare ( OCI_Interval itv,
OCI_Interval itv2 
)

Compares two interval handles.

Parameters:
itv - Interval1 handle
itv2 - Interval2 handle
Returns:
  • -1 if interval1 is smaller than interval2,
  • 0 if they are equal
  • 1 if interval1 is greater than interval2.

Definition at line 264 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT OCI_Interval* OCI_API OCI_IntervalCreate ( OCI_Connection con,
unsigned int  type 
)

Create a local interval object.

Parameters:
con - Connection handle
type - Type of Interval
Note:
From version 2.5.0, parameter 'con' can be NULL in order to manipulate intervals independently from database connections

Interval type can be :

Returns:
Return the Interval handle on success otherwise NULL on failure

Definition at line 126 of file interval.c.

OCI_EXPORT boolean OCI_API OCI_IntervalFree ( OCI_Interval itv  ) 

Free an OCI_Interval handle.

Parameters:
itv - Interval handle
Warning:
Only Intervals created with OCI_IntervalCreate() should be freed by OCI_IntervalFree()
Returns:
TRUE on success otherwise FALSE

Definition at line 153 of file interval.c.

References OCI_Interval::con, OCI_Interval::handle, OCI_Interval::hstate, and OCI_Interval::type.

Referenced by OCI_ElemFree().

OCI_EXPORT boolean OCI_API OCI_IntervalFromText ( OCI_Interval itv,
const mtext *  str 
)

Convert a string to an interval and store it in the given interval handle.

Parameters:
itv - Destination interval handle
str - Source date string
Returns:
TRUE on success otherwise FALSE

Definition at line 295 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalFromTimeZone ( OCI_Interval itv,
const mtext *  str 
)

Correct an interval handle value with the given time zone.

Parameters:
itv - Interval handle
str - Time zone name
Returns:
TRUE on success otherwise FALSE

Definition at line 396 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalGetDaySecond ( OCI_Interval itv,
int *  day,
int *  hour,
int *  min,
int *  sec,
int *  fsec 
)

Return the day / time portion of an interval handle.

Parameters:
itv - Interval handle
day - Place holder for day value
hour - Place holder for hours value
min - Place holder for minutes value
sec - Place holder for seconds value
fsec - Place holder for fractional part of seconds value
Returns:
TRUE on success otherwise FALSE

Definition at line 438 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT unsigned int OCI_API OCI_IntervalGetType ( OCI_Interval itv  ) 

Return the type of the given Interval object.

Parameters:
itv - Interval handle
Note:
For possible values, see OCI_IntervalCreate()
Returns:
Object type or OCI_UNKNOWN the input handle is NULL

Definition at line 188 of file interval.c.

References OCI_Interval::con, and OCI_Interval::type.

OCI_EXPORT boolean OCI_API OCI_IntervalGetYearMonth ( OCI_Interval itv,
int *  year,
int *  month 
)

Return the year / month portion of an interval handle.

Parameters:
itv - Interval handle
year - Place holder for year value
month - Place holder for month value
Returns:
TRUE on success otherwise FALSE

Definition at line 487 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalSetDaySecond ( OCI_Interval itv,
int  day,
int  hour,
int  min,
int  sec,
int  fsec 
)

Set the day / time portion if the given interval handle.

Parameters:
itv - Interval handle
day - day value
hour - Hour value
min - Minute value
sec - Second value
fsec - Fractional part of the seconds
Returns:
TRUE on success otherwise FALSE

Definition at line 526 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalSetYearMonth ( OCI_Interval itv,
int  year,
int  month 
)

Set the year / month portion if the given Interval handle.

Parameters:
itv - Interval handle
year - Year value
month - Month value
Returns:
TRUE on success otherwise FALSE

Definition at line 565 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalSubtract ( OCI_Interval itv,
OCI_Interval itv2 
)

Subtract an interval handle value from another.

Parameters:
itv - Interval handle from witch to remove
itv2 - Interval handle to remove
Returns:
TRUE on success otherwise FALSE

Definition at line 629 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

OCI_EXPORT boolean OCI_API OCI_IntervalToText ( OCI_Interval itv,
int  leading_prec,
int  fraction_prec,
int  size,
mtext *  str 
)

Convert an interval value from the given interval handle to a string.

Parameters:
itv - source Interval handle
leading_prec - Precision of the leading part
fraction_prec - Precision of the fractional part
size - Destination string size in characters
str - Destination date string
Returns:
TRUE on success otherwise FALSE

Definition at line 338 of file interval.c.

References OCI_Interval::con, OCI_Interval::err, and OCI_Interval::handle.

Referenced by OCI_GetString().

OCI_EXPORT boolean OCI_API OCI_TimestampAssign ( OCI_Timestamp tmsp,
OCI_Timestamp tmsp_src 
)

Assign the value of a timestamp handle to another one.

Parameters:
tmsp - Destination Timestamp handle
tmsp_src - Source Timestamp handle
Returns:
TRUE on success otherwise FALSE

Definition at line 209 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_ElemSetTimestamp(), and OCI_ObjectSetTimestamp().

OCI_EXPORT int OCI_API OCI_TimestampCheck ( OCI_Timestamp tmsp  ) 

Check if the given timestamp is valid.

Parameters:
tmsp - Timestamp handle
Returns:
  • Zero if the timestamp value is valid
  • Any other value means the timestamp value is invalid

Definition at line 239 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

OCI_EXPORT int OCI_API OCI_TimestampCompare ( OCI_Timestamp tmsp,
OCI_Timestamp tmsp2 
)

Compares two timestamp handles.

Parameters:
tmsp - Timestamp1 handle
tmsp2 - Timestamp2 handle
Returns:
  • -1 if Timestamp1 is smaller than Timestamp2,
  • 0 if they are equal
  • 1 if Timestamp1 is greater than Timestamp2.

Definition at line 268 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

OCI_EXPORT boolean OCI_API OCI_TimestampConstruct ( OCI_Timestamp tmsp,
int  year,
int  month,
int  day,
int  hour,
int  min,
int  sec,
int  fsec,
const mtext *  timezone 
)

Set a timestamp handle value.

Parameters:
tmsp - Timestamp handle
year - Year value
month - Month value
day - Day value
hour - hour value
min - minutes value
sec - seconds value
fsec - fractional part of seconds value
timezone - name of a time zone to use [optional]
Returns:
TRUE on success otherwise FALSE

Definition at line 299 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_TimestampFromCTime().

OCI_EXPORT boolean OCI_API OCI_TimestampConvert ( OCI_Timestamp tmsp,
OCI_Timestamp tmsp_src 
)

Convert one timestamp value from one type to another.

Parameters:
tmsp - Timestamp handle to convert
tmsp_src - Timestamp handle to use for the type conversion
Returns:
TRUE on success otherwise FALSE

Definition at line 345 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_TimestampIntervalAdd(), OCI_TimestampIntervalSub(), and OCI_TimestampSysTimeStamp().

OCI_EXPORT OCI_Timestamp* OCI_API OCI_TimestampCreate ( OCI_Connection con,
unsigned int  type 
)

Create a local Timestamp instance.

Parameters:
con - Connection handle
type - Timestamp type
Note:
From version 2.5.0, parameter 'con' can be NULL in order to manipulate timestamps independently from database connections

Timestamp type can be :

Returns:
Return the Timestamp handle on success otherwise NULL on failure

Definition at line 129 of file timestamp.c.

Referenced by OCI_TimestampIntervalAdd(), OCI_TimestampIntervalSub(), and OCI_TimestampSysTimeStamp().

OCI_EXPORT boolean OCI_API OCI_TimestampFree ( OCI_Timestamp tmsp  ) 

Free an OCI_Timestamp handle.

Parameters:
tmsp - Timestamp handle
Warning:
Only Timestamp created with OCI_TimestampCreate() should be freed by OCI_IntervalFree()
Returns:
TRUE on success otherwise FALSE

Definition at line 157 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::handle, OCI_Timestamp::hstate, and OCI_Timestamp::type.

Referenced by OCI_ElemFree(), OCI_TimestampIntervalAdd(), OCI_TimestampIntervalSub(), and OCI_TimestampSysTimeStamp().

OCI_EXPORT boolean OCI_API OCI_TimestampFromCTime ( OCI_Timestamp tmsp,
struct tm *  ptm,
time_t  t 
)

Affect ISO C time datatypes values to an OCI_Timestamp handle.

Parameters:
tmsp - Timestamp handle
ptm - Pointer to a structure tm that hold the date/time value
t - Value (time_t) that hold the date/time in the time_t format
Note:
Both parameters 'ptm' and 'p' are optional but one of them has to be provided. If 'ptm' is not null, its value is affected to the OCI_Timestamp handle, otherwise the value of 't' is used.

Returns:
TRUE on success otherwise FALSE

Definition at line 950 of file timestamp.c.

References OCI_Timestamp::con, and OCI_TimestampConstruct().

OCI_EXPORT boolean OCI_API OCI_TimestampFromText ( OCI_Timestamp tmsp,
const mtext *  str,
const mtext *  fmt 
)

Convert a string to a timestamp and store it in the given timestamp handle.

Parameters:
tmsp - Destination Timestamp handle
str - Source date string
fmt - Date format
Returns:
TRUE on success otherwise FALSE

Definition at line 375 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

OCI_EXPORT boolean OCI_API OCI_TimestampGetDate ( OCI_Timestamp tmsp,
int *  year,
int *  month,
int *  day 
)

Extract the date part from a timestamp handle.

Parameters:
tmsp - Timestamp handle
year - Place holder for year value
month - Place holder for month value
day - Place holder for day value
Returns:
TRUE on success otherwise FALSE

Definition at line 491 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_TimestampGetDateTime().

OCI_EXPORT boolean OCI_API OCI_TimestampGetDateTime ( OCI_Timestamp tmsp,
int *  year,
int *  month,
int *  day,
int *  hour,
int *  min,
int *  sec,
int *  fsec 
)

Extract the date and time parts from a date handle.

Parameters:
tmsp - Date handle
year - Place holder for year value
month - Place holder for month value
day - Place holder for day value
hour - Place holder for hour value
min - Place holder for minute value
sec - Place holder for second value
fsec - Place holder for fractional part of seconds value
Returns:
TRUE on success otherwise FALSE

Definition at line 606 of file timestamp.c.

References OCI_TimestampGetDate(), and OCI_TimestampGetTime().

Referenced by OCI_TimestampToCTime().

OCI_EXPORT boolean OCI_API OCI_TimestampGetTime ( OCI_Timestamp tmsp,
int *  hour,
int *  min,
int *  sec,
int *  fsec 
)

Extract the time portion from a timestamp handle.

Parameters:
tmsp - Timestamp handle
hour - Place holder for hour value
min - Place holder for minute value
sec - Place holder for second value
fsec - Place holder for fractional part of second value
Returns:
TRUE on success otherwise FALSE

Definition at line 545 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_TimestampGetDateTime().

OCI_EXPORT boolean OCI_API OCI_TimestampGetTimeZoneName ( OCI_Timestamp tmsp,
int  size,
mtext *  str 
)

Return the time zone name of a timestamp handle.

Parameters:
tmsp - Timestamp handle
size - Destination string size in characters
str - Destination zone name string
Returns:
TRUE on success otherwise FALSE

Definition at line 618 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

OCI_EXPORT boolean OCI_API OCI_TimestampGetTimeZoneOffset ( OCI_Timestamp tmsp,
int *  hour,
int *  min 
)

Return the time zone (hour, minute) portion of a timestamp handle.

Parameters:
tmsp - Timestamp handle
hour - Place holder for hour value
min - Place holder for min value
Returns:
TRUE on success otherwise FALSE

Definition at line 668 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

OCI_EXPORT unsigned int OCI_API OCI_TimestampGetType ( OCI_Timestamp tmsp  ) 

Return the type of the given Timestamp object.

Parameters:
tmsp - Timestamp handle
Note:
For possible values, see OCI_TimestampCreate()
Returns:
Object type or OCI_UNKNOWN the input handle is NULL

Definition at line 194 of file timestamp.c.

References OCI_Timestamp::con, and OCI_Timestamp::type.

OCI_EXPORT boolean OCI_API OCI_TimestampIntervalAdd ( OCI_Timestamp tmsp,
OCI_Interval itv 
)

Add an interval value to a timestamp value of a timestamp handle.

Parameters:
tmsp - Timestamp handle
itv - Interval handle
Returns:
TRUE on success otherwise FALSE

Definition at line 705 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, OCI_Interval::handle, OCI_Timestamp::handle, OCI_TimestampConvert(), OCI_TimestampCreate(), OCI_TimestampFree(), and OCI_Timestamp::type.

OCI_EXPORT boolean OCI_API OCI_TimestampIntervalSub ( OCI_Timestamp tmsp,
OCI_Interval itv 
)

Subtract an interval value from a timestamp value of a timestamp handle.

Parameters:
tmsp - Timestamp handle
itv - Interval handle
Returns:
TRUE on success otherwise FALSE

Definition at line 760 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, OCI_Interval::handle, OCI_Timestamp::handle, OCI_TimestampConvert(), OCI_TimestampCreate(), OCI_TimestampFree(), and OCI_Timestamp::type.

OCI_EXPORT boolean OCI_API OCI_TimestampSubtract ( OCI_Timestamp tmsp,
OCI_Timestamp tmsp2,
OCI_Interval itv 
)

Store the difference of two timestamp handles into an interval handle.

Parameters:
tmsp - Timestamp handle (subtrahend)
tmsp2 - Timestamp2 handle (minuend)
itv - Interval handle
Note:
The fonction acts like tmsp - tmsp2 = itv
Returns:
TRUE on success otherwise FALSE

Definition at line 816 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, OCI_Interval::handle, and OCI_Timestamp::handle.

OCI_EXPORT boolean OCI_API OCI_TimestampSysTimeStamp ( OCI_Timestamp tmsp  ) 

Stores the system current date and time as a timestamp value with time zone into the timestamp handle.

Parameters:
tmsp - Timestamp handle
Returns:
TRUE on success otherwise FALSE

Definition at line 848 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, OCI_Timestamp::handle, OCI_TimestampConvert(), OCI_TimestampCreate(), OCI_TimestampFree(), and OCI_Timestamp::type.

OCI_EXPORT boolean OCI_API OCI_TimestampToCTime ( OCI_Timestamp tmsp,
struct tm *  ptm,
time_t *  pt 
)

Affect an OCI_Timestamp handle value to ISO C time datatypes.

Parameters:
tmsp - Timestamp handle
ptm - Pointer to a structure tm to receive date/time values
pt - Pointer to a time_t to hold the date/time in the time_t format
Note:
Both parameters 'ptm' and 'p' are optional but one of them has to be provided.
Returns:
TRUE on success otherwise FALSE

Definition at line 907 of file timestamp.c.

References OCI_Timestamp::con, and OCI_TimestampGetDateTime().

OCI_EXPORT boolean OCI_API OCI_TimestampToText ( OCI_Timestamp tmsp,
const mtext *  fmt,
int  size,
mtext *  str,
int  precision 
)

Convert a timestamp value from the given timestamp handle to a string.

Parameters:
tmsp - source Timestamp handle
fmt - Timestamp format
size - Destination string size in characters
str - Destination date string
precision - Precision for fractional part of the seconds
Returns:
TRUE on success otherwise FALSE

Definition at line 427 of file timestamp.c.

References OCI_Timestamp::con, OCI_Timestamp::err, and OCI_Timestamp::handle.

Referenced by OCI_GetString().


Generated on Thu Jul 30 17:41:54 2009 for OCILIB (C Driver for Oracle) by  doxygen 1.5.4