ResultSet类¶
ResultSet提供对执行语句生成的数据表的访问。按顺序检索表行。在一行中,可以以任何顺序访问列值。
ResultSet维护一个指向其当前数据行的游标。最初,游标定位在第一行之前。下一个方法将光标移动到下一行。
ResultSet的列的数量、类型和属性由getColumnListMetaData()方法返回的元数据对象提供。
getBDouble()¶
以BDouble的形式返回当前行中某个列的值。如果值为SQL NULL,则结果为NULL。
语法
BDouble getBDouble(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getBfile()¶
以Bfile的形式返回当前行的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
Bfile getBfile(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getBFloat()¶
以BFloat的形式返回当前行的列的值。如果值为SQL NULL,则结果为NULL。
语法
BFloat getBFloat(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getBlob()¶
获取当前行中作为Blob的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
Blob getBlob(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getBytes()¶
结果为NULL。以字节数组的形式获取当前行中的列的值,返回列值。字节表示服务器返回的原始值。如果值为SQL NULL,则结果为NULL数组。
语法
Bytes getBytes(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getCharSet()¶
提取要获取的数据的字符集,以字符串形式返回。
语法
string getCharSet(
unsigned int colIndex) const;
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getCharSetUString()¶
提取要获取的数据的字符集,以字符串形式返回。(UString为字符集支持)
语法
UString getCharSetUString(
unsigned int colIndex) const
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getColumnListMetaData()¶
ResultSet列的数量、类型和属性由getMetaData方法提供。
语法
vector<MetaData> getColumnListMetaData() const;
getDate()¶
获取当前行中的日期对象的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
Date getDate(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getDouble()¶
获取当前行中c++双精度值列的值。返回列值;如果值为SQL NULL,则结果为0。
语法
double getDouble(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getFloat()¶
以c++浮点数的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为0。
语法
float getFloat(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getInt()¶
以c++ int的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为0。
语法
int getInt(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getIntervalDS()¶
以IntervalDS对象的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
IntervalDS getIntervalDS(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getIntervalYM()¶
以IntervalYM对象的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
IntervalYM getIntervalYM(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getMaxColumnSize()¶
获取通过setMaxColumnSize()设置的值。
语法
unsigned int getMaxColumnSize(
unsigned int colIndex) const;
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getNumArrayRows()¶
返回在最后一次数组获取中获取的实际行数。与next()方法一起使用。此方法不能用于非数组获取。
语法
unsigned int getNumArrayRows() const;
getNumber()¶
以Number对象的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为NULL。
语法
Number getNumber(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getString()¶
以字符串形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。
语法
string getString(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getUString()¶
以字符串形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。(UString为字符集支持)
语法
string getUString(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getTimestamp()¶
以时间戳对象的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。
语法
Timestamp getTimestamp(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getUInt()¶
以unsigned int的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。
语法
unsigned int getUInt(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
isNull()¶
一个列的值可能是SQL NULL;isNull()报告最后读取的列是否有这个特殊值。注意,必须首先对列调用getxxx()来尝试读取它的值,然后调用isNull()来查找该值是否为SQL NULL。如果最后读取的列为SQL NULL,则返回TRUE。
语法
bool isNull(
unsigned int colIndex) const;
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
isTruncated()¶
检查参数的值是否被截断。如果参数的值被截断,则返回TRUE;否则,返回FALSE。
语法
bool isTruncated(
unsigned int paramIndex) const;
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
setCharSet()¶
设置列的字符集。
语法
void setCharSet(
unsigned int colIndex,
string charSet);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
| charSet | 字符集 |
setCharSetUString()¶
设置列的字符集。(UString为字符集支持)
语法
void setCharSetUString(
unsigned int colIndex,
const UString & charSet);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
| charSet | 字符集 |
setDataBuffer()¶
指定将在其中提取或绑定数据的数据缓冲区。缓冲区参数是指向用户分配的数据缓冲区的指针。数据的当前长度必须在length参数中指定。数据量不应超过size参数。
数据类型只能使用非ACCI和非C++自定义类型,比如string,不能使用Bytes和Date。
语法
void setDataBuffer(
unsigned int colIndex,
void *buffer,
Type type,
sb4 size = 0,
ub2 *length = NULL,
sb2 *ind = NULL,
ub2 *rc = NULL);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
| buffer | 指向用户分配缓冲区的指针。 |
| buffer | 在缓冲区中提供(或检索)的数据类型。 |
| size | 数据缓冲区的大小。 |
| length | 指向缓冲区中数据长度的指针。 |
| ind | 指示器或者数组。 |
| rc | 数据的真实长度。 |
setErrorOnNull()¶
此方法在读取结果集的colIndex列上的空值时启用/禁用异常。
语法
void setErrorOnNull(
unsigned int colIndex,
bool causeException);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
| causeException | 如果为TRUE,启用异常;如果为FALSE,禁用异常。 |
setMaxColumnSize()¶
指定从列中读取的最大数据量(以字节为单位)。
语法
void setMaxColumnSize(
nsigned int colIndex,
unsigned int max);
setErrorOnTruncate()¶
当发生截断时,此方法启用/禁用异常。
语法
void setErrorOnTruncate(
unsigned int paramIndex,
bool causeException);
| 参数 | 描述 |
|---|---|
| paramIndex | 列索引,第一列是1,第二列是2,依此类推。 |
| causeException | 如果为TRUE,启用异常;如果为FALSE,禁用异常。 |
getUInt64()¶
以unsigned int64的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。
语法
Uint64 getUInt64(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getInt64()¶
以signed int64的形式获取当前行中的列的值。返回列值;如果值为SQL NULL,则结果为空字符串。
语法
Uint64 getInt64(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getRowid()¶
获取SELECT ... FOR UPDATE语句的当前行ID。 行ID可以绑定到准备好的DELETE语句,依此类推。 返回SELECT ... FOR UPDATE语句的当前rowid。
语法
Bytes getRowid(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |
getCursor()¶
获取嵌套的光标作为ResultSet。 可以从该结果集中获取数据。 嵌套游标是从带有CURSOR(SELECT ...)子句的嵌套查询中得出的:
语法
ResultSet * getCursor(
unsigned int colIndex);
| 参数 | 描述 |
|---|---|
| colIndex | 列索引,第一列是1,第二列是2,依此类推。 |