![]() |
OCILIB (C and C++ Driver for Oracle)
4.7.6
Open source and cross platform Oracle Driver delivering efficient access to Oracle databases.
|
Object identifying the SQL data type TIMESTAMP. More...
#include <types.hpp>
Public Types | |
enum | TimestampTypeValues { NoTimeZone = OCI_TIMESTAMP , WithTimeZone = OCI_TIMESTAMP_TZ , WithLocalTimeZone = OCI_TIMESTAMP_LTZ } |
Interval types enumerated values. More... | |
typedef core::Enum< TimestampTypeValues > | TimestampType |
Type of timestamp. More... | |
Public Member Functions | |
Timestamp () | |
Create an empty null timestamp instance. | |
Timestamp (TimestampType type) | |
Create a new instance of the given type. More... | |
Timestamp (TimestampType type, const ostring &data, const ostring &format=OTEXT("")) | |
Creates a timestamp object with the value provided by the input date time string. More... | |
TimestampType | GetType () const |
Return the type of the given timestamp object. | |
void | Convert (const Timestamp &other) |
Convert the current timestamp to the type of the given timestamp. More... | |
bool | IsValid () const |
Check if the given timestamp is valid. | |
int | GetYear () const |
Return the timestamp year value. | |
void | SetYear (int value) |
Set the timestamp year value. | |
int | GetMonth () const |
Return the timestamp month value. | |
void | SetMonth (int value) |
Set the timestamp month value. | |
int | GetDay () const |
Return the timestamp day value. | |
void | SetDay (int value) |
Set the timestamp day value. | |
int | GetHours () const |
Return the timestamp hours value. | |
void | SetHours (int value) |
Set the timestamp hours value. | |
int | GetMinutes () const |
Return the timestamp minutes value. | |
void | SetMinutes (int value) |
Set the timestamp minutes value. | |
int | GetSeconds () const |
Return the timestamp seconds value. | |
void | SetSeconds (int value) |
Set the timestamp seconds value. | |
int | GetMilliSeconds () const |
Return the timestamp seconds value. | |
void | SetMilliSeconds (int value) |
Set the timestamp milliseconds value. | |
void | GetDate (int &year, int &month, int &day) const |
Extract the date parts. More... | |
void | GetTime (int &hour, int &min, int &sec, int &fsec) const |
Extract time parts. More... | |
void | SetDate (int year, int month, int day) |
Set the date part. More... | |
void | SetTime (int hour, int min, int sec, int fsec) |
Set the time part. More... | |
void | GetDateTime (int &year, int &month, int &day, int &hour, int &min, int &sec, int &fsec) const |
Extract date and time parts. More... | |
void | SetDateTime (int year, int month, int day, int hour, int min, int sec, int fsec, const ostring &timeZone=OTEXT("")) |
Set the timestamp value from given date time parts. More... | |
ostring | GetTimeZone () const |
Return the name of the current time zone. More... | |
void | SetTimeZone (const ostring &timeZone) |
Set the given time zone to the timestamp. More... | |
void | GetTimeZoneOffset (int &hour, int &min) const |
Return the time zone (hour, minute) offsets. More... | |
void | FromString (const ostring &data, const ostring &format=OCI_STRING_FORMAT_DATE) |
Assign to the timestamp object the value provided by the input date time string. More... | |
ostring | ToString (const ostring &format, int precision) const |
Convert the timestamp value to a string using the given format and precision. More... | |
ostring | ToString () const override |
Convert the timestamp value to a string using default date format and no precision. | |
Timestamp | Clone () const |
Clone the current instance to a new one performing deep copy. | |
Timestamp & | operator++ () |
Increment the timestamp by 1 day. | |
Timestamp | operator++ (int) |
Increment the timestamp by 1 day. | |
Timestamp & | operator-- () |
Decrement the Timestamp by 1 day. | |
Timestamp | operator-- (int) |
Decrement the Timestamp by 1 day. | |
Timestamp | operator+ (int value) const |
Return a new Timestamp holding the current Timestamp value incremented by the given number of days. | |
Timestamp | operator- (int value) const |
Return a new Timestamp holding the current Timestamp value decremented by the given number of days. | |
Interval | operator- (const Timestamp &other) |
Return an interval storing the difference between the current timestamp and the given one. | |
Timestamp & | operator+= (int value) |
Increment the Timestamp by the given number of days. | |
Timestamp & | operator-= (int value) |
Decrement the Timestamp by the given number of days. | |
Timestamp | operator+ (const Interval &other) const |
Return a new Timestamp holding the sum of the current Timestamp value and the given Interval value. | |
Timestamp | operator- (const Interval &other) const |
Return a new Timestamp holding the difference of the current Timestamp value and the given Interval value. | |
Timestamp & | operator+= (const Interval &other) |
Increment the current Value with the given Interval value. | |
Timestamp & | operator-= (const Interval &other) |
Decrement the current Value with the given Interval value. | |
bool | operator== (const Timestamp &other) const |
Indicates if the current Timestamp value is equal to the given Timestamp value. | |
bool | operator!= (const Timestamp &other) const |
Indicates if the current Timestamp value is not equal the given Timestamp value. | |
bool | operator> (const Timestamp &other) const |
Indicates if the current Timestamp value is superior to the given Timestamp value. | |
bool | operator< (const Timestamp &other) const |
Indicates if the current Timestamp value is inferior to the given Timestamp value. | |
bool | operator>= (const Timestamp &other) const |
Indicates if the current Timestamp value is superior or equal to the given Timestamp value. | |
bool | operator<= (const Timestamp &other) const |
Indicates if the current Timestamp value is inferior or equal to the given Timestamp value. | |
Static Public Member Functions | |
static Timestamp | SysTimestamp (TimestampType type=NoTimeZone) |
return the current system timestamp More... | |
static void | Substract (const Timestamp &lsh, const Timestamp &rsh, Interval &result) |
Subtract the given two timestamp and store the result into the given Interval. More... | |
Object identifying the SQL data type TIMESTAMP.
This class wraps the OCILIB object handle OCI_Timestamp and its related methods
Type of timestamp.
Possible values are Timestamp::TimestampTypeValues
|
inline |
Create a new instance of the given type.
type | - Timestamp type to create |
Definition at line 35 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampCreate().
|
inline |
Creates a timestamp object with the value provided by the input date time string.
type | - Timestamp type to create |
data | - String date time |
format | - format of the date time provided in parameter 'data' |
Definition at line 44 of file Timestamp.hpp.
References ocilib::core::Check(), FromString(), and OCI_TimestampCreate().
|
inlinestatic |
return the current system timestamp
type | - Timestamp type to create |
Definition at line 281 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampSysTimestamp().
|
inline |
Convert the current timestamp to the type of the given timestamp.
other | - Timestamp to use for the type conversion |
Definition at line 84 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampConvert().
|
inline |
Extract the date parts.
year | - Place holder for year value |
month | - Place holder for month value |
day | - Place holder for day value |
Definition at line 213 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampGetDate().
Referenced by GetDay(), GetMonth(), GetYear(), SetDay(), SetMonth(), and SetYear().
|
inline |
Extract time parts.
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 the seconds |
Definition at line 218 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampGetTime().
Referenced by GetHours(), GetMilliSeconds(), GetMinutes(), GetSeconds(), SetHours(), SetMilliSeconds(), SetMinutes(), and SetSeconds().
|
inline |
Set the date part.
year | - Year value |
month | - Month value |
day | - Day value |
Definition at line 228 of file Timestamp.hpp.
References GetDateTime(), and SetDateTime().
Referenced by SetDay(), SetMonth(), and SetYear().
|
inline |
Set the time part.
hour | - Hour value |
min | - Minute value |
sec | - Second value |
fsec | - Place holder for fractional part of the seconds |
Definition at line 236 of file Timestamp.hpp.
References GetDateTime(), and SetDateTime().
Referenced by SetHours(), SetMilliSeconds(), SetMinutes(), and SetSeconds().
|
inline |
Extract date and time parts.
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 the seconds |
Definition at line 223 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampGetDateTime().
Referenced by SetDate(), SetTime(), and SetTimeZone().
|
inline |
Set the timestamp value from given date time parts.
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] |
Definition at line 79 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampConstruct().
Referenced by SetDate(), SetTime(), and SetTimeZone().
|
inline |
Return the name of the current time zone.
Definition at line 255 of file Timestamp.hpp.
References ocilib::core::Check(), GetType(), ocilib::core::MakeString(), NoTimeZone, and OCI_TimestampGetTimeZoneName().
|
inline |
Set the given time zone to the timestamp.
Definition at line 244 of file Timestamp.hpp.
References GetDateTime(), GetType(), SetDateTime(), and WithTimeZone.
|
inline |
Return the time zone (hour, minute) offsets.
hour | - Place holder for hour value |
min | - Place holder for min value |
Definition at line 271 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampGetTimeZoneOffset().
|
inlinestatic |
Subtract the given two timestamp and store the result into the given Interval.
Definition at line 276 of file Timestamp.hpp.
References ocilib::core::Check(), and OCI_TimestampSubtract().
|
inline |
Assign to the timestamp object the value provided by the input date time string.
data | - String date time |
format | - format of the date time provided in parameter 'data' |
Definition at line 290 of file Timestamp.hpp.
References ocilib::core::Check(), ocilib::FormatTimestamp, ocilib::Environment::GetFormat(), and OCI_TimestampFromText().
Referenced by Timestamp().
|
inline |
Convert the timestamp value to a string using the given format and precision.
format | - date time / timestamp format to use |
precision | - precision for milliseconds |
Definition at line 295 of file Timestamp.hpp.
References ocilib::core::Check(), ocilib::core::MakeString(), and OCI_TimestampToText().