#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "sqlca.h" //连接数据库
/*
EXEC SQL CONNECT {:user IDENTIFIED BY :oldpswd | :usr_psw }
[[AT { dbname | :host_variable }] USING :connect_string ]
[ { ALTER AUTHORIZATION :newpswd | IN { SYSDBA | SYSOPER } MODE }];
*/ EXEC SQL BEGIN DECLARE SECTION;
char * serverid="scott/123456@orcl";
char user[];
char passwd[];
char sid[];
EXEC SQL END DECLARE SECTION; //user 用户名
//passwd 密码
//sid 数据库ID void main()
{
int ret=;
//C语言中使用宿主变量
//printf("serverid=%s\r\n",serverid); printf("user:");
scanf("%s",user); printf("passwd:");
scanf("%s",passwd); printf("sid:");
scanf("%s",sid); //连接数据库方式一--在嵌入SQL编程中使用变量需要加:
EXEC SQL connect:user IDENTIFIED BY :passwd USING :sid ;
//连接数据库方式二
//EXEC SQL connect:serverid;
if(sqlca.sqlcode!=)
{
ret=sqlca.sqlcode;
printf("connect err :%d",ret);
system("pause");
}else
{
printf("connect ok!\r\n");
//提交事务断开连接
EXEC SQL commit release;
printf("Oracle closed !\r\n");
system("pause");
}
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "sqlca.h" EXEC SQL BEGIN DECLARE SECTION;
char *user="scott";
char *passwd="";
char *sid="orcl";
char *linkf="link1";//通过宿主变量 指定名字
char *linkt="link2";
EXEC SQL END DECLARE SECTION; //user 用户名
//passwd 密码
//sid 数据库ID void main()
{
int ret=;
//连接数据库方式三 --多个用户连接多个数据库
EXEC SQL connect:user IDENTIFIED BY :passwd AT :linkf USING :sid ;
if(sqlca.sqlcode!=)
{
ret=sqlca.sqlcode;
printf("connect1 err :%d",ret);
system("pause");
}else
{
printf("connect1 ok!\r\n");
//提交事务断开连接
EXEC SQL commit release;
printf("Oracle closed !\r\n");
//system("pause");
}
EXEC SQL connect:user IDENTIFIED BY :passwd AT :linkt USING :sid ;
if(sqlca.sqlcode!=)
{
ret=sqlca.sqlcode;
printf("connect2 err :%d",ret);
system("pause");
}else
{
printf("connect2 ok!\r\n");
//提交事务断开连接
EXEC SQL commit release;
printf("Oracle closed !\r\n");
//system("pause");
}
system("pause");
}
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "sqlca.h" //这里我用的是一个用户,其实也可以是多个用户
EXEC SQL BEGIN DECLARE SECTION;
char *user="scott";
char *passwd="";
char *sid="orcl";
EXEC SQL END DECLARE SECTION; void main()
{
int ret=;
//和第三种方式不同,由oracle自动分配
EXEC SQL DECLARE linkf DATABASE;
EXEC SQL DECLARE linkt DATABASE;
//连接数据库方式四 --注意linkf不再是宿主变量,所以不需要加:
EXEC SQL connect:user IDENTIFIED BY :passwd AT linkf USING :sid ;
if(sqlca.sqlcode!=)
{
ret=sqlca.sqlcode;
printf("connect1 err :%d",ret);
system("pause");
}else
{
printf("connect1 ok!\r\n");
//提交事务断开连接
EXEC SQL commit release;
printf("Oracle closed !\r\n");
//system("pause");
}
EXEC SQL connect:user IDENTIFIED BY :passwd AT linkt USING :sid ;
if(sqlca.sqlcode!=)
{
ret=sqlca.sqlcode;
printf("connect2 err :%d",ret);
system("pause");
}else
{
printf("connect2 ok!\r\n");
//提交事务断开连接
EXEC SQL commit release;
printf("Oracle closed !\r\n");
//system("pause");
}
system("pause");
}

最新文章

  1. Splinter学习--初探1,模拟百度搜索
  2. Redis多机常用架构-主从
  3. AngularJS in Action读书笔记2——view和controller的那些事儿
  4. javascript 导出Excel
  5. mybatis 的if else
  6. opencv基本的数据结构(转)
  7. npm 发布包
  8. [python实用代码片段]python获取当前时间的前一天,前一周,前一个月
  9. Unity GUI内绘制贝塞尔曲线
  10. Objc基础学习记录2
  11. Ubuntu 软件包管理详解
  12. Java文件流应用:剪切文件
  13. hadoop各个类及其作用
  14. faster-rcnn中ROI_POOIING层的解读
  15. iOS 通讯录空格
  16. HttpClient(二)HttpClient使用Ip代理与处理连接超时
  17. MTK Camera相关的Makefile Option详解
  18. hdu 1238 Substrings(kmp+暴力枚举)
  19. 伪分布式安装core-site.xml和hdfs-site.xml配置文件
  20. C语言程序设计基础知识点概括

热门文章

  1. 很全的Python 面试题 github
  2. PHP RESTful
  3. 静态库与动态库的制作以及程序的动态函数库解析ldd;ldconfig与/etc/ld.so.conf
  4. jsp简单实现统计在线人数
  5. JDBC 利用反射技术将查询结果封装为对象(简单ORM实现)
  6. Think in Java(二):初始化与清理
  7. winform通过网络获取用户信息
  8. NS3网络仿真(6): 总线型网络
  9. TensorFlow 简单实例
  10. appium 1.6.3 + ios 10.2 + xcode 8.2.1 真机运行iphone app