- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ORACLE数据库API接口函数设计说明
ORACLE数据库API接口函数设计说明
API接口函数使用示例:
参见程序OCIDEMO.DSW
//工程中不用在连接ociw32.lib只用xjoci.lib就行了。
假定:
工程文件为newocidemo,所在目录为c:\newocidemo,newocidemo.exe位于c:\newocidemo\debug下面
使用步骤:
1、将MyConnection.h;oratypes.h;ocidem.h;ocidfn.h;xioci.lib复制到c:\newocidemo下面
2、将xioci.dll复制到c:\newocidemo\debug下面
3、设置project 下的 settings 下面的link 中的 object/library modules: 为xjoci.lib
4、在file中添加MyConnection.h,从而在class中会出现connection,cursor两个新类
API接口函数类设计:
CONNECTION类
class connection
{
friend class cursor;
public:
BOOL IsConnected();
connection();
~connection();
BOOL connect(char *username, char *password,char *sername);
BOOL disconnect();
void display_error() const;
private:
Lda_Def lda;
ub1 hda[HDA_SIZE];
enum conn_state
{
not_connected,
connected
};
conn_state state;
};
BOOL connect(char *username, char *password,char *sername);
函数用途:connect函数建立OCI程序与ORACLE数据库的连接
参数说明:char *username,--用户名
char *password,--口令
char *sername—主机字符串(数据库别名)。
返回值:连接成功返回TRUE,不成功返回FALSE
BOOL disconnect();
函数用途:disconnect函数断开与数据库的连接
参数说明:
返回值:断开成功返回TRUE,不成功返回FALSE
BOOL IsConnected ();
函数用途:IsConnected函数判断是否与数据库建立了连接。
参数说明:
返回值:有连接存在返回值为TRUE,没有连接返回值为FALSE
void display_error() const;
函数用途:display_error当各个函数返回值为FALSE时,调用此函数可以显示错误信息。
返回值:
CURSOR类
class cursor
{
public:
BOOL IsOpened();
BOOL ExecuteSQL(char * stmt);
cursor();
~cursor();
BOOL open(connection *conn_param);
BOOL close();
BOOL parse(const char *stmt);
/* 绑定输入 */
BOOL bind_by_position(int sqlvnum, void *progvar,int progvarlen, int datatype,short *indicator);
/* 定义输出 */
BOOL define_by_position(int position, void *buf,int bufl, int datatype);
//取得列描述信息
BOOL describe(int position, long *dbsize, int *dbtype,
void *cbuf, int *cbufl, long *dsize, int *prec,
int *scale, int *nullok);
BOOL execute();
BOOL fetch();
void display_error();
private:
int get_error_code();
Cda_Def cda;
connection *
文档评论(0)