student_id 1 long - 学生学号
student_name 2 string - 学生姓名
student_age 3 long - 学生年龄
student_id等3项就是自定义fml32类型的域字段,其中每一个字段都对应一个number,这些number有一个公共的起始值,通过*base 10000定义.
定义之后通过mkfldhdr32 student_fld编译该文件,之后生成student_fld.h头文件,在应用程序中将引用该文件.
编写源程序以及定义表
定义t_student表,其中id表示学号,name表示学生姓名,age定义表示姓名.
进入oracle sqlplus,键入:
create table t_student (id number(10), name varchar2(20), age number(3));
源程序文件wtc_jolt.pc(该程序通过pro*c文件访问数据库oracle数据库):
#include
#include
#include
#include
#include \
EXEC ORACLE OPTION (RELEASE_CURSOR = YES);
#if defined(__STDC__) || defined(__cplusplus)
tpsvrinit(int argc, char *argv[])
#else
tpsvrinit(argc, argv)
int argc;
char **argv;
#endif
{
EXEC SQL BEGIN DECLARE SECTION;
char sConnStr [100];
EXEC SQL END DECLARE SECTION;
argc = argc;
argv = argv;
memset(sConnStr, 0x00, sizeof(sConnStr));
strcpy(sConnStr, “数据库连接串”);
EXEC SQL Connect :sConnStr;
if (sqlca.sqlcode)
{
userlog(\连接数据库失败,错误号码:%d,详细原因:%s \
return -1;
}
}
#ifdef __cplusplus
extern \
#endif
void
#if defined(__STDC__) || defined(__cplusplus)
fml32_test(TPSVCINFO *rqst)
#else
fml32_test(rqst)
TPSVCINFO *rqst;
#endif
{
FBFR32 *recebuf = NULL;
FBFR32 *sendbuf = NULL;
FLDLEN32 recebuflen = 0;
EXEC SQL BEGIN DECLARE SECTION;
long lStudentId = 0;
char sName[15] = \
long lAge = 0;
EXEC SQL END DECLARE SECTION;
recebuf = (FBFR32 *)rqst->data;
if ((sendbuf = (FBFR32 *)tpalloc(\
{
tpterm();
exit(-1);
}
recebuflen=0;
Fget32(recebuf, student_id, 0, (char *)&lStudentId, &recebuflen);
EXEC SQL Select age, name Into :lAge, :sName
From t_student
Where student_id = :lStudentId;
if (sqlca.sqlcode)
{
userlog(\查询失败,code=%d,detail=%s \
exit(-2);
}
Fchg32(sendbuf, student_age, 0, (char *)&lAge, 0);
Fchg32(sendbuf, student_name, 0, sName, 0);
tpreturn(TPSUCCESS , 0, (char *)sendbuf, 0, 0);
}
编写makefile文件
.SUFFIXES:.pc .c
CC=cc
TUXINCLUDE=$(TUXDIR)/include
ORAINCLUDE=$(ORACLE_HOME)/precomp/public
WORKPATH=$(HOME)/../../...
APPPATH=$(HOME)/bin
TARGET=wtc_jolt
all: $(TARGET)
-@echo \
wtc_jolt:wtc_jolt.c
buildserver -f wtc_jolt.o -o wtc_jolt -s \
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库通过wtc使tuxedo与weblogic通信开发(2)在线全文阅读。
相关推荐: