IntervalDS类¶
IntervalDS类封装以天、小时、分钟、秒和小数秒为单位的时间间隔计算。主要字段的精度是由输入的以天为单位的十进制数决定的。分秒精度由输入的分数位数决定。
如何通过直接分配使用一个空的IntervalDS对象
Environment *env = Environment::createEnvironment();
// 创建一个空的间隔
IntervalDS ds;
if(ds.isNull())
cout << "\n ds is null";
// 给ds分配一个非空值
IntervalDS anotherDS(env, "10 20:14:2");
ds = anotherDS;
// 现在所有对区间的操作都是有效的
int DAY = ds.getDay();
IntervalDS()¶
IntervalDS类构造函数。
| 语法 | 描述 |
|---|---|
| IntervalDS(); | 构造一个空IntervalDS对象。可以通过 赋值或调用fromText()方法来初始化NU LL IntervalDS。可以对空IntervalDS 对象调用的方法是isNull()。 |
IntervalDS(
|
在指定的环境中构造IntervalDS对象。 |
IntervalDS(
|
从src构造一个IntervalDS对象。 |
| 参数 | 描述 |
|---|---|
| env | 环境 |
| day | IntervalDS的日期字段 |
| hour | IntervalDS的小时字段 |
| minute | IntervalDS的分钟字段 |
| second | IntervalDS的秒字段 |
| fs | IntervalDS的fs字段 |
| src | 复制IntervalDS对象的源IntervalDS。 |
fromText()¶
从指定的字符串创建间隔。
语法
void fromText(
const string &inpstr,const string &nlsParam = "",const Environment *env = NULL);
| 参数 | 描述 |
|---|---|
| inpstr | 要关闭的环境 |
| nlsParam | 不支持 |
| env | ACCI环境对象指针 |
fromUText()¶
从指定的字符串创建间隔。
语法
void fromUText(
const UString &inpstr,
const Environment *env=NULL );
| 参数 | 描述 |
|---|---|
| nlsParam | days hours:minutes:seconds的格式 |
| env | ACCI环境对象指针 |
operator*()¶
将间隔乘以指定的值并返回结果。
语法
const IntervalDS operator*(
const IntervalDS &interval,
const Number &val);
| 参数 | 描述 |
|---|---|
| interval | 要乘的区间。 |
| val | 乘区间的值。 |
operator*=()¶
将间隔乘以指定的值结果赋值给区间。
语法
IntervalDS& operator*=(
const Number &factor);
| 参数 | 描述 |
|---|---|
| factor | 间隔的秒数 |
operator==()¶
比较指定的间隔。如果间隔相等,则返回TRUE;否则,返回FALSE。如果任何一个间隔为空,则抛出SQLException。
语法
bool operator==(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator!=()¶
比较指定的间隔。如果间隔不相等,则返回TRUE;否则,返回FALSE。如果任何一个间隔为空,则抛出SQLException。
语法
bool operator!=(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator/()¶
返回间隔除以常数值的结果。
语法
const IntervalDS operator/(
const IntervalDS ÷nd,
const Number &factor);
| 参数 | 描述 |
|---|---|
| dividend | 要分割的区间。 |
| factor | 要除以区间的值。 |
operator/=()¶
将区间和val的商赋给区间。
语法
IntervalDS& operator/=(
const Number &factor);
| 参数 | 描述 |
|---|---|
| factor | 要除以区间的值。 |
operator>()¶
比较指定的间隔。如果第一个间隔大于第二个间隔,那么返回TRUE;否则,返回FALSE。
如果任何一个间隔为空,则抛出SQLException。
语法
bool operator>(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator>=()¶
比较指定的间隔。如果第一个间隔大于或等于第二个间隔,那么返回TRUE;否则,返回FALSE。如果任何一个间隔为空,则抛出SQLException。
语法
bool operator>=(
const IntervalDS &first,
const IntervalDS &first);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator<()¶
比较指定的间隔。如果第一个间隔小于第二个间隔,则返回TRUE;否则,返回FALSE。如果任何一个间隔为空,则抛出SQLException。
语法
bool operator<(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator<=()¶
比较指定的间隔。如果第一个间隔小于或等于第二个间隔,则返回TRUE;否则,返回FALSE。如果任何一个间隔为空,则抛出SQLException。
语法
bool operator<=(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator-()¶
返回第一和第二间隔之间的差。
语法
const IntervalDS operator-(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
operator+()¶
返回指定的间隔的和。
语法
const IntervalDS operator+(
const IntervalDS &first,
const IntervalDS &second);
| 参数 | 描述 |
|---|---|
| first | 要比较的第一个间隔。 |
| second | 要比较的第二个间隔。 |
set()¶
将间隔设置为指定的值。
语法
void set(
int day,
int hour,
int minute,
int second,
int fracsec);
| 参数 | 描述 |
|---|---|
| day | 天 |
| hour | 小时 |
| minute | 分钟 |
| second | 秒 |
| fracsec | 小数秒 |
toText()¶
将间隔转换为字符串表示形式。
语法
string toText(
unsigned int lfprec,
unsigned int fsprec,
const string &nlsParam = "") const;
| 参数 | 描述 |
|---|---|
| lfprec | 字符串中首位位置的精度位数 |
| fsprec | 小数秒的精度位数 |
| nlsParam | 不支持 |
toUText()¶
将间隔转换为字符串表示形式。
语法
UString toUText(
unsigned int lfprec,
unsigned int fsprec) const;
| 参数 | 描述 |
|---|---|
| lfprec | 字符串中首位位置的精度位数 |
| fsprec | 小数秒的精度位数 |