数据库 Proc编程二
2024-08-25 00:28:16
#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");
}
最新文章
- Splinter学习--初探1,模拟百度搜索
- Redis多机常用架构-主从
- AngularJS in Action读书笔记2——view和controller的那些事儿
- javascript 导出Excel
- mybatis 的if else
- opencv基本的数据结构(转)
- npm 发布包
- [python实用代码片段]python获取当前时间的前一天,前一周,前一个月
- Unity GUI内绘制贝塞尔曲线
- Objc基础学习记录2
- Ubuntu 软件包管理详解
- Java文件流应用:剪切文件
- hadoop各个类及其作用
- faster-rcnn中ROI_POOIING层的解读
- iOS 通讯录空格
- HttpClient(二)HttpClient使用Ip代理与处理连接超时
- MTK Camera相关的Makefile Option详解
- hdu 1238 Substrings(kmp+暴力枚举)
- 伪分布式安装core-site.xml和hdfs-site.xml配置文件
- C语言程序设计基础知识点概括
热门文章
- 很全的Python 面试题 github
- PHP RESTful
- 静态库与动态库的制作以及程序的动态函数库解析ldd;ldconfig与/etc/ld.so.conf
- jsp简单实现统计在线人数
- JDBC 利用反射技术将查询结果封装为对象(简单ORM实现)
- Think in Java(二):初始化与清理
- winform通过网络获取用户信息
- NS3网络仿真(6): 总线型网络
- TensorFlow 简单实例
- appium 1.6.3 + ios 10.2 + xcode 8.2.1 真机运行iphone app