33 |
otl_stream & operator>>(otl_long_unicode_string & s) |
在定义了OTL_UNICODE或OTL_UNICODE_CHAR_TYPE宏情况下,返回UNICODE的LOB类型 | |||||||||||||||||||||||||||||||||
34 |
otl_stream & operator>>(OTL_UNICODE_CHAR_TYPE&c) |
在定义了OTL_UNICODE或OTL_UNICODE_CHAR_TYPE宏情况下,返回UNICODE的字符类型 | |||||||||||||||||||||||||||||||||
35 |
otl_stream operator>>(OTL_UNICODE_CHAR_TYPE * s) |
在定义了OTL_UNICODE或OTL_UNICODE_CHAR_TYPE宏情况下,返回UNICODE的字符串 | |||||||||||||||||||||||||||||||||
36 |
otl_stream & operator>>(OTL_UNICODE_STRING_TYPE & s) |
在定义了OTL_UNICODE或OTL_UNICODE_CHAR_TYPE/OTL_UNICODE_STRING_TYPE宏情况下,返回UNICODE的string类型,能够很好的读取大数据字段类型,如TEXT类型等。 | |||||||||||||||||||||||||||||||||
37 |
otl_stream & operator>>(char & c) |
返回单字节的字符 | |||||||||||||||||||||||||||||||||
38 |
otl_stream & operator>>(undigned char & c) |
返回单字节的无符号字符 | |||||||||||||||||||||||||||||||||
39 |
otl_stream & operator>>(char * s) |
返回单字节的字符串类型 | |||||||||||||||||||||||||||||||||
40 |
otl_stream& operator>>(unsigned char* s); |
返回无符号的单字节字符串类型 | |||||||||||||||||||||||||||||||||
41 |
otl_stream& operator>>(otl_long_string& s); |
返回LOB类型 | |||||||||||||||||||||||||||||||||
42 |
otl_stream& operator>>(std::string& s); |
必须定义OTL_STL宏。 读取流中的string类型 | |||||||||||||||||||||||||||||||||
43 |
otl_stream& operator>>(ACE_TString& s); |
必须定义OTL_ACE。 读取流中的ACE_TString类型。 | |||||||||||||||||||||||||||||||||
44 |
otl_stream& operator>>(USER_DEFINED_STRING_CLASS & s); |
必须定义USER_DEFINE_STRING_CLASS和OTL_USER_DEFINED_CLASS_ON宏。 读取用户自定义的与string类型兼容的类型。 | |||||||||||||||||||||||||||||||||
45 |
otl_stream& operator>>(int& n); |
读取32位有符号整型 | |||||||||||||||||||||||||||||||||
46 |
otl_stream& operator>>(unsigned& u); |
读取32位无符号整武师 | |||||||||||||||||||||||||||||||||
47 |
otl_stream& operator>>(short& sh); |
读取16位短整型 | |||||||||||||||||||||||||||||||||
48 |
otl_stream& operator>>(long int& l); |
读取长整型(具体长度由编译器决定) | |||||||||||||||||||||||||||||||||
49 |
otl_stream& operator>>(float& f); |
读取4字节长度的浮点型 | |||||||||||||||||||||||||||||||||
50 |
otl_stream& operator>>(double& d); |
读取8字节长度的浮点型 | |||||||||||||||||||||||||||||||||
51 |
otl_stream& operator>>(OTL_BIGINT& d); |
在定义了OTL_BIGINT的情况下。对于不支持bigint的ODBC来说,该操作能将一个数字串转换为64位的有符号整型。 必须定义OTL_STRING_TO_BIGINT/OTL_BIGINT_TO_STRING。 | |||||||||||||||||||||||||||||||||
52 |
otl_stream& operator>>(otl_datetime& dt); |
读取流中的时间信息 | |||||||||||||||||||||||||||||||||
53 |
otl_stream& operator>>(otl_XXX_tab<…>& tab); |
通过OCI来读取SQL语句中的表信息 | |||||||||||||||||||||||||||||||||
54 |
otl_stream& operator>>(otl_lob_stream& lob); |
把CLOB/BLOB/TEXT/IMAGE类型读取到otl_lob_stream类型里面 | |||||||||||||||||||||||||||||||||
55 |
otl_stream& operator>>(otl_refcur_stream& refcur); |
把游标的信息读取到otl_refcur_stream类型里面。 | |||||||||||||||||||||||||||||||||
56 |
otl_stream& operator<<(const unsigned char* s); |
往流中写入信息。 往流中写入一个以NULL结尾的字符串。如果定义了OTL_UNICODE,则是双字节字符串。 | |||||||||||||||||||||||||||||||||
57 |
otl_stream& operator<<(otl_long_unicode_string& s); |
往流中写入UNICODE LOB类型 | |||||||||||||||||||||||||||||||||
58 |
otl_stream& operator<<(const OTL_UNICODE_CHAR_TYPE& c); |
在定义了OTL_UNICODE_CHAR_TYPE宏的情况下,往流中写入一个UNICODE字符 | |||||||||||||||||||||||||||||||||
59 |
otl_stream& operator<<(const OTL_UNICODE_CHAR_TYPE* s); |
往流中写入一个UNICODE字符串 | |||||||||||||||||||||||||||||||||
60 |
otl_stream& operator>>(const OTL_UNICODE_STRING_TYPE& s); |
在定义了OTL_UNICODE/OTL_UNICODE_CHAR_TYPE/OTL_UNICODE_STRING_TYPE宏的情况下,把一个字符串写入到流中。(可以是大对象) | |||||||||||||||||||||||||||||||||
61 |
otl_stream& operator<<(const char c); |
往流中写入一个字符 | |||||||||||||||||||||||||||||||||
62 |
otl_stream& operator<<(const unsigned char c); |
往流中写入一个无符号的字符 | |||||||||||||||||||||||||||||||||
63 |
otl_stream& operator<<(const char* s); |
往流中写入一个以NULL结尾的字符串 | |||||||||||||||||||||||||||||||||
64 |
otl_stream& operator<<(const unsigned char* s); |
往流中写入一个以NULL结尾的无符号的字符串 | |||||||||||||||||||||||||||||||||
65 |
otl_stream& operator<<(const otl_long_string& d); |
往流中写入LOB类型对象 | |||||||||||||||||||||||||||||||||
66 |
otl_stream& operator<<(const std::string& s); |
在定义了OTL_STL宏的情况下,往流里面写入一个STL的string类型。 | |||||||||||||||||||||||||||||||||
67 |
otl_stream& operator<<(const ACE_TString &s); |
在这、定义了OTL_ACE宏的情况下,往流中写入一个ACE_TString类型。 | |||||||||||||||||||||||||||||||||
68 |
otl_stream& operator<<(const USER_DEFINED_STRING_CLASS &s); |
在定义了USER_DEFINED_STRING_CLASS和OTL_USER_DEFINED_CLASS_ON宏的情况下,往流中写入一个用户自定义的字符串类型 | |||||||||||||||||||||||||||||||||
69 |
otl_stream& operator<<(const int n); |
往流中写入一个有符号的整型 | |||||||||||||||||||||||||||||||||
70 |
otl_stream& operator<<(const unsigned u); |
往流中写入一个无符号的整型 | |||||||||||||||||||||||||||||||||
71 |
otl_stream& operator<<(const short sh); |
往流中写入一个短整型 | |||||||||||||||||||||||||||||||||
72 |
otl_stream& operator<<(const long int l); |
往流中写入一个长整型 | |||||||||||||||||||||||||||||||||
73 |
otl_stream& operator<<(const float f); |
往流中写入4字节长度的浮点型 | |||||||||||||||||||||||||||||||||
74 |
otl_stream& operator<<(const double d); |
往流中写入8字节长度的浮点型 | |||||||||||||||||||||||||||||||||
75 |
otl_stream& operator<<(const OTL_BIGINT d); |
在定义了OTL_BIGINT的情况下。对于不支持bigint的ODBC来说,该操作能将一个数字串转换为64位的有符号整型。 必须定义OTL_STRING_TO_BIGINT/OTL_BIGINT_TO_STRING。 | |||||||||||||||||||||||||||||||||
76 |
otl_stream& operator<<(const otl_null &n); |
往流中写入NULL值。 OTL定义了一个匿名的NULL类,如下: class otl_null { public: otl_null(); ~otl_null(); }; | |||||||||||||||||||||||||||||||||
77 |
otl_stream& operator<<(const otl_datetime& dt); |
往流中写入日期/时间类型。OTL定义了自已的一个otl_datetime类,如下:
fraction/frac_precision两个成员是由数据库决定的。具体数据库支持的精度不一样,该两个成员变量值也不一样。 | |||||||||||||||||||||||||||||||||
78 |
otl_stream& operator<<(const otl_XXX_tab<…>& tab); |
往流中写入SQL的表信息 | |||||||||||||||||||||||||||||||||
79 |
otl_stream& operator<<(otl_lob_stream& lob); |
往流中写入otl_lob_stream对象 | |||||||||||||||||||||||||||||||||
80 |
void set_all_column_types (const unsigned int amask=0); |
设置一组输出字段的类型。可以有如下设置: otl_all_num2str otl_all_date2str otl_all_num2str | otl_all_date2str | |||||||||||||||||||||||||||||||||
81 |
void set_column_type (const int column_ndx, const int col_type, const int col_size=0); |
设置输出字段的类型。 column_ndx索引为输出字段的相对位置,如1、2、3. col_type是由OTL定义的一组类型。 col_size是指用来存放新的类型的长度,该长度只对otl_var_char类型有效,对于数值类型能自动计算得出。 该函数能被简单的SELECT语句、带游标的SELECT语句和返回结果集的SELECT语句调用。 该函数里面的类型组合如下:
该函数强烈要求限制使用,只有在那些确实因为数值容纳不下的情况下,才允许使用otl_var_char进行转换 | |||||||||||||||||||||||||||||||||
82 |
int get_dirty_buf_len(); |
返回流的缓冲区里面脏数据的行数。所谓的脏数据,指的是对于缓冲区大于1的时候,当执行SQL语句的时候,缓冲区未被填满的情况下,已经使用了的缓冲区条数。如缓冲区为100条记录,在执行某SELECT语句后,取出30条数据,那么缓冲区此时不会被刷新,缓冲区里面有30条数据,执行此函数后就返回30. 如果缓冲区长度被设置为1后,该函数总是返回0.因为如果缓冲区为1后,每次取出记录都会填满缓冲区,此时缓冲区被填满后就会自动刷新,所以缓冲区里面未被刷新的数据总是0条。所以总是返回0. 该函数同样可以返回SELECT语句的游标或结果集缓冲区里面的脏数据。 对于其它的(非SELECT/UPDATE/DELETE/UPDATE)SQL语句块或存储过程,该函数未定义。 | |||||||||||||||||||||||||||||||||
83 |
int get_prefetched_row_count(); |
返回SELEC语句、有结果集的存储过程或ORACLE的游标的累计的结果行数。而对于其他的存储过程则总是返回0. 如:对于某SELECT语句,第一次执行返回50,第二次执行返回50,第三次执行结果返回23,那么执行该函数时候,依次返回的的结果是50、100、123. | |||||||||||||||||||||||||||||||||
84 |
void skip_to_end_of_row(); |
把读取流的指针定位到当前行的末尾。以便下次读取流的时候,又从逻辑行的第一列开始读取。 | |||||||||||||||||||||||||||||||||
85 |
void check_end_of_row(); |
检测是否到达行的末尾。如果没有到达行的末尾,该函数抛出END_OF_ROW check failed异常。 | |||||||||||||||||||||||||||||||||
86 |
otl_stream& operator>>(otl_stream& (*pf) (otl_stream&)); |
该函数调用(*pf)流函数(check_end_of_row())。常用法如下: s>>f1>>f2>>endr; | |||||||||||||||||||||||||||||||||
87 |
otl_stream& operator<<(otl_stream& (*pf) (otl_stream&)); |
同上,把输出定义为输入。 |