当前位置:首页 » 操作系统 » c数据库oracle数据库连接

c数据库oracle数据库连接

发布时间: 2023-02-08 15:50:58

A. 怎么把c语言和Oracle11g连接在一起

有三种办法:
1、用ODBC,安装ODBC驱动,使用微软提供的ODBC的API访问数据库
2、用ORACLE提供的OCI API调用方式;
3、用ORACLE提供的PRO C方式。
如果你熟悉sql,建议用方式3,如果熟悉ODBC,建议用方式1,方式2比较麻烦些。
以下代码是我用PRO C编写的,供参考:
int ProcConnect(char * sDatabaseName,char * sUserName, char * sPassword)
{
EXEC SQL CONNECT :sUserName IDENTIFIED BY :sPassword USING :sDatabaseName;
if(DBError("Connect Database failed.")) return FALSE;
else return TRUE;
}
/*===========================================================================*/
void ProcCommit()
{
EXEC SQL COMMIT;
}
/*===========================================================================*/
void ProcCommitRelease()
{
EXEC SQL COMMIT RELEASE;
}
/*===========================================================================*/
void ProcRollback()
{
EXEC SQL ROLLBACK;
}
/*===========================================================================*/
void ProcRollbackRelease()
{
EXEC SQL ROLLBACK RELEASE;
}
/*===========================================================================*/
int DBError(char * sMsg)
{
char sErrMsg[1024];
int nRetCode;

size_t szBuf_len, szMsg_len;

if (sqlca.sqlcode >= 0) return FALSE;
szBuf_len = sizeof(sErrMsg);
sqlglm(sErrMsg, &szBuf_len, &szMsg_len);
sErrMsg[szMsg_len] = 0;
sprintf(sDBErrorBuff,"\r\nSQL DBError point:%s", sMsg);
sprintf(sDBErrorBuff+strlen(sDBErrorBuff),"\r\nsqlcode = %d,%s\r\n", sqlca.sqlcode, rTrim(sErrMsg));
if(OraDBDisconnected)
{
printf("The DBConnection was broken!\r\n");
exit(-1);
}
else nRetCode = TRUE;
printf("%s\r\n",sDBErrorBuff);
return nRetCode;
}

B. windows系统下,c如何连接oracle数据库

首先,这类问题应该问到编程区去,这是软件喔

########insert.pc############
#include <stdio.h>
EXEC SQL INCLUDE SQLCA;

void insert (char password_[6],char id_[20],int balance_)
{

EXEC SQL BEGIN DECLARE SECTION;
VARCHAR user[20],pass[20],tnsname[20];
char password[6];
char id[20];
int balance;
EXEC SQL END DECLARE SECTION;

strcpy(user.arr,"scott");
user.len=(unsigned short)strlen((char *)user.arr);
strcpy(pass.arr,"tiger");
pass.len=(unsigned short)strlen((char *)pass.arr);
strcpy(tnsname.arr,"demo1");
tnsname.len=(unsigned short)strlen((char *)tnsname.arr);

strcpy(id,id_);
strcpy(password,password_);
balance = balance_;

EXEC SQL CONNECT :user IDENTIFIED BY :pass USING :tnsname;

EXEC SQL insert into bank_bingo values (:id , :password , :balance);

EXEC SQL COMMIT WORK;
EXEC SQL commit work release;

}

#################main.c####################

#include <stdio.h>
extern void insert (char password_[6],char id_[20],int balance_);
int main(int argc , char ** argv){
char id [20] = "10001";
char password[6] = "123";
int balance = 10000;
insert(password , id , balance);
return 0;
}

############################################

C. 怎么连接oracle数据库服务器

前提是电脑必须安装oracle客户端。
配置方法:
1、找到oracle的安装目录。如:C:\oracle\proct\10.2.0\db_1\network\ADMIN

2、找到tnsnames.ora文件。

3、用文本方式打开,添加以下内容:

本地实例名 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 远程数据库IP地址)(PORT = 远程服务器端口号))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 远程数据库服务名)
)
)

其中中文部分是需要修改的部分,除第一个“本地实例名”外,其他需要跟远程数据库管理员咨询,本地实例名就是方便自己识别数据库的一个名字,可以自定义。
4、然后打开pl/sql就能看到自己创建的链接,如图:

D. C语言程序连接oracle数据库高可用报ora03115错

可以的。
OracleDatabase,又名OracleRDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
C语言诞生于美国的贝尔实验室,由丹尼斯·里奇(DennisMacAlistairRitchie)以肯尼斯·蓝·汤普森(KennethLaneThompson)设计的B语言为基础发展而来,在它的主体设计完成后,汤普森和里奇用它完全重写了UNIX,且随着UNIX的发展,c语言也得到了不断的完善。为了利于C语言的全面推广,许多专家学者和硬件厂商联合组成了C语言标准委员会,并在之后的1989年,诞生了第一个完备的C标准,简称“C89”,也就是“ANSIC”,截至2020年,最新的C语言标准为2018年6月发布的“C18”。

E. LINUX C/C++用什么连接oracle数据库啊解决办法

在Windows的控制面板中,查找ODBC数据源,配置一个能够连接Oracle的数据源,并测试能够成功连接。然后在VS中连接这个数据源即可。

热点内容
opencvpython3mac 发布:2025-07-22 00:22:07 浏览:699
java获取方法 发布:2025-07-22 00:17:45 浏览:240
读书软件视频分镜头广告脚本 发布:2025-07-21 23:32:00 浏览:60
算法ecd 发布:2025-07-21 23:29:05 浏览:704
安卓会玩叫什么 发布:2025-07-21 23:23:00 浏览:354
备用域服务器搭建 发布:2025-07-21 23:22:59 浏览:599
编译yacc教程 发布:2025-07-21 23:21:51 浏览:353
linux服务器ip查询工具 发布:2025-07-21 23:15:32 浏览:360
scratch编程是什么 发布:2025-07-21 23:10:26 浏览:949
查看linuxjdk 发布:2025-07-21 23:09:45 浏览:41