Oracle® C++ Call Interface Programmer's Guide, 11g Release 2 (11.2) Part Number E10764-03 |
|
|
PDF · Mobi · ePub |
IntervalYM
supports the SQL standard data type Year-Month Interval.
Leading field precision is determined by number of decimal digits on input.
Table 13-21 Fields of IntervalYM Class
Field | Type | Description |
---|---|---|
|
|
Year component. Valid values are |
|
|
Month component. Valid values are |
Example 13-8 How to Use an Empty IntervalYM Object Through Direct Assignment
This example demonstrates that the default constructor creates a NULL
value, and how you can assign a non NULL
value to a year-month interval and then perform operations on it:
Environment *env = Environment::createEnvironment(); // Create a NULL year-month interval IntervalYM ym if(ym.isNull()) cout << "\n ym is null"; // Assign a non-NULL value to ym IntervalYM anotherYM(env, "10-30"); ym=anotherYM; // Now all operations on YM are valid int yr = ym.getYear();
Example 13-9 How to Use an IntervalYM Object Through ResultSet and toText() Method
This example demonstrates how to get the year-month interval column from a result set, add to the year-month interval by using the +=
operator, multiply by using the *
operator, compare 2 year-month intervals, and convert a year-month interval to a string by using the toText()
method.
//SELECT WARRANT_PERIOD from PRODUCT_INFORMATION //obtain result set resultset->next(); //get interval value from resultset IntervalYM ym1 = resultset->getIntervalYM(1); IntervalYM addWith(env, 10, 1); ym1 += addWith; //call += operator IntervalYM mulYm1 = ym1 * Number(env, 10); //call * operator if(ym1<mulYm1) //comparison . . string strym = ym1.toText(3); //3 is the leading field precision
Table 13-22 Summary of IntervalYM Methods
Method | Summary |
---|---|
|
|
Converts a |
|
Converts a |
|
Returns month interval value. |
|
Returns year interval value. |
|
Checks if the interval is |
|
Returns the product of two |
|
Multiplication assignment. |
|
Simple assignment. |
|
Checks if |
|
Checks if |
|
Returns an |
|
Division assignment. |
|
Checks if |
|
Checks if |
|
Checks if |
|
Checks if |
|
Returns an |
|
Subtraction assignment. |
|
Returns the sum of two |
|
Addition assignment. |
|
Sets the interval to the values specified. |
|
Sets the interval to |
|
Converts to a |
|
Converts to a |
IntervalYM class constructor.
Syntax | Description |
---|---|
IntervalYM(); |
Constructs a NULL IntervalYM object. A NULL IntervalYM can be initialized by assignment or calling operator*() method. Methods that can be called on NULL IntervalYM objects are setName() and isNull(). |
IntervalYM( const Environment *env, int year = 0, int month = 0); |
Creates an IntervalYM object within the specified Environment . |
IntervalDS( const IntervalYM &src); |
Copy constructor. |
Parameter | Description |
---|---|
env |
The Environment . |
year |
The year field of the IntervalYM object. |
month |
The month field of the IntervalYM object. |
src |
The source that the IntervalYM object is copied from. |
This method initializes the interval to the values in inpstr
. The string is interpreted using the NLS parameters set in the environment.
The NLS parameters are picked up from env
. If env
is NULL
, the NLS parameters are picked up from the environment associated with the instance, if any.
void fromText( const string &inpStr, const string &nlsParam = "", const Environment *env = NULL);
Parameter | Description |
---|---|
inpStr |
Input string representing a year month interval of the form 'year-month'. |
nlsParam |
The NLS parameters string. If nlsParam is specified, this determines the NLS parameters to be used for the conversion. If nlsParam is not specified, the NLS parameters are picked up from envp . |
env |
Environment whose NLS parameters are used. |
Creates the interval from the UString
specified.
void fromUText( const UString &inpStr, const Environment *env=NULL );
Parameter | Description |
---|---|
inpStr |
Input UString representing a year month interval of the form 'year-month'. |
env |
The Environment . |
This method returns the month component of the interval.
int getMonth() const;
This method returns the year component of the interval.
int getYear() const;
This method tests whether the interval is NULL
. If the interval is NULL
then TRUE
is returned; otherwise, FALSE
is returned.
bool isNull() const;
This method multiplies the interval by a factor and returns the result.
const IntervalYM operator*( const IntervalDS &interval const Number &val);
Parameter | Description |
---|---|
interval |
Interval to be multiplied. |
val |
Value by which interval is to be multiplied. |
This method multiplies the interval by a specified value.
Syntax
IntervalYM& operator*=( const Number &factor);
Parameter | Description |
---|---|
factor |
Value to be multiplied. |
This method assigns the specified value to the interval.
IntervalYM& operator=( const IntervalYM &src);
Parameter | Description |
---|---|
src |
Value to be assigned. |
This method compares the intervals specified. If the intervals are equal then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown.
bool operator==( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method compares the intervals specified. If the intervals are not equal then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown.
bool operator!=( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method returns the result of dividing the interval by a factor.
const IntervalYM operator/( const IntervalYM ÷nd, const Number &factor);
Parameter | Description |
---|---|
dividend |
The interval to be divided. |
factor |
Value by which interval is to be divided. |
This method divides the interval by a factor.
IntervalYM& operator/=( const Number &factor);
Parameter | Description |
---|---|
factor |
A day second interval. |
This method compares the intervals specified. If the first interval is greater than the second interval then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown.
bool operator>( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method compares the intervals specified. If the first interval is greater than or equal to the second interval then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown.
bool operator>=( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method compares the intervals specified. If the first interval is less than the second interval then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown.
bool operator<( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method compares the intervals specified. If the first interval is less than or equal to the second interval then TRUE
is returned; otherwise, FALSE
is returned. If either interval is NULL
then SQLException is thrown
bool operator<=( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method returns the difference between the intervals specified.
const IntervalYM operator-( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
-=
()This method computes the difference between itself and another interval.
IntervalYM& operator-=( const IntervalYM &val);
Parameter | Description |
---|---|
val |
A day second interval. |
This method returns the sum of the intervals specified.
const IntervalYM operator+( const IntervalYM &first, const IntervalYM &second);
Parameter | Description |
---|---|
first |
The first interval to be compared. |
second |
The second interval to be compared. |
This method assigns the sum of IntervalYM
and val
to IntervalYM
.
IntervalYM& operator+=( const IntervalYM &val);
Parameter | Description |
---|---|
val |
A day second interval. |
This method sets the interval to the values specified.
void set( int year, int month);
Parameter | Description |
---|---|
year |
Year component. Valid values are -10^9 through 10^9 . |
month |
Month component. Valid values are -11 through 11 . |
This method sets the interval to NULL
.
void setNull();
This method returns the string representation of the interval.
string toText( unsigned int lfprec, const string &nlsParam = "") const;
Parameter | Description |
---|---|
lfprec |
Leading field precision. |
nlsParam |
The NLS parameters string. If nlsParam is specified, this determines the NLS parameters to be used for the conversion. If nlsParam is not specified, the NLS parameters are picked up from envp . |
Converts to a UString
representation for the interval.
UString toUText( unsigned int lfprec) cosnt;
Parameter | Description |
---|---|
lfprec |
Leading field precision. |