Clob类¶
Clob类定义类型为Clob的对象的公共属性。Clob是作为数据库表的行中的列值存储的大型字符对象。Clob对象包含指向Clob的逻辑指针,而不是指向Clob本身。
Clob类的方法使您能够执行与Clob对象相关的特定任务,包括获取SQL Clob的长度、在客户机上具体化Clob以及提取Clob的一部分的方法。
对于空CLOB对象,惟一有效的方法是setEmpty()、isNull()和operator=()。
ResultSet和Statement类中的方法,如getClob()和setClob(),使您能够访问SQL CLOB值
一个未初始化的CLOB对象可以被初始化:
- setEmpty()方法。然后可以修改CLOB,方法是将这个CLOB插入到表中,并使用SELECT...FOR UPDATE。write()方法修改CLOB;但是,只有在提交事务时,修改的数据才会刷新到表中。注意,插入不是必需的。
- 将一个已经初始化的Clob对象分配给它。
Clob()¶
Clob类构造函数。
| 语法 | 描述 |
|---|---|
| Clob(); | 创建空Clob对象。 |
| Clob( const Connection * connectionp); | 创建一个未初始化的Clob对象。 |
| Clob( const Clob * srcClob); | 创建Clob对象的副本。 |
| 参数 | 描述 |
|---|---|
| connectionp | 连接指针。 |
| srcClob | 源Clob对象。 |
getStream()¶
从CLOB返回流对象。如果流已打开,则不允许在CLOB对象上打开另一个流,因此用户必须始终在执行任何CLOB对象操作之前关闭流。
语法
Stream* getStream(
unsigned int offset = 1,
unsigned int amount = 0);
| 参数 | 描述 |
|---|---|
| offset | 开始从CLOB读取数据的起始位置。如果未指定偏移量,则从 CLOB的开始写入数据。有效值是大于或等于1的数字。 |
| amount | 要读取的连续字符的总数。如果数量为0,则从偏移值读取 数据,直到CLOB结束。 |
open()¶
以读/写或只读模式打开CLOB。
语法
void open(
LObOpenMode mode = OCCI_LOB_READWRITE);
| 参数 | 描述 |
|---|---|
| mode | 要打开CLOB的模式。有效值:
|
operator=()¶
将一个CLOB分配给当前CLOB。仅当目标CLOB存储在表中时,源CLOB才会复制到目标CLOB。
语法
Clob& operator=(
const Clob &srcClob);
| 参数 | 描述 |
|---|---|
| srcClob | 必须从其中复制数据的Clob。 |
read()¶
将部分或全部CLOB读入缓冲区。
语法
unsigned int read(
unsigned int amt,
unsigned char *buffer,
unsigned int bufsize,
unsigned int offset=1) const;
| 参数 | 描述 |
|---|---|
| amt | 要从CLOB读取的字节数。 |
| buffer | 要读入CLOB数据的缓冲区。 |
| buffsize | 缓冲区的大小。有效值是大于或等于amt的数字。 |
| offset | 开始从CLOB读取数据的起始位置。如果未指定偏移量,则从 CLOB的开始写入数据。有效值是大于或等于1的数字。 |
write()¶
将数据从缓冲区写入CLOB。
语法
unsigned int write(
unsigned int amt,
unsigned char *buffer,
unsigned int bufsize,
unsigned int offset=1) const;
| 参数 | 描述 |
|---|---|
| amt | 要写入CLOB的字节数。 |
| buffer | 包含要写入CLOB的数据的缓冲区。 |
| buffsize | 缓冲区的大小。有效值是大于或等于amt的数字。 |
| offset | 开始向CLOB写入数据的起始位置。如果未指定偏移量,则从 CLOB的开始写入数据。有效值是大于或等于1的数字。 |
void setCharSetId(const string &charset)¶
设置与 Clob 关联的字符集 ID。
语法
void setCharSetId(
const string &charset);
| 参数 | 描述 |
|---|---|
| charset | 神通支持的字符集名称如:AL32UTF8,ZHS16GBK |
UString getCharSetIdUString() const¶
以字符串形式返回 CLOB 的字符集 ID。UString类型
语法
UString getCharSetIdUString() const;
void setCharSetIdUSString(const UString &charset)¶
设置与 Clob 关联的字符集 ID。UString类型
语法
void setCharSetIdUSString(
const UString &charset);
| 参数 | 描述 |
|---|---|
| charset | 神通支持的字符集名称如:AL32UTF8,ZHS16GBK(UString类型) |