- 论坛徽章:
- 0
|
makefile文件:
CC= gcc
DBNAME = shjddb
INCDIR = $(HOME)/sqllib/include
BINDIR = $(HOME)/sqllib/bin
BNDDIR = $(HOME)/sqllib/bnd
LIBDIR = $(HOME)/sqllib/lib
CFLAGS = -I$(INCDIR) -s
LFLAGS = -L$(LIBDIR) -ldb2
test = test.o
all: test clear
test : $(test)
$(CC) -O $(LFLAGS) $(test) -o $@
.SUFFIXES:.SQC
.SQC.o:
cp $*.SQC $*.sqc
db2 connect to $(DBNAME);
db2 prep $*.sqc BINDFILE USING $(BNDDIR)/$*.bnd;
db2 bind $(BNDDIR)/$*.bnd datetime ISO;
db2 grant execute on package $* to public;
$(CC) -g -c -O $(CFLAGS) $*.c
-rm -f $*.c $*.sqc
clear:
-rm *.o
test.SQC文件
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sqlenv.h>
#include <sqlcodes.h>
#include <sqlda.h>
EXEC SQL INCLUDE sqlca;
int main()
{
EXEC SQL BEGIN DECLARE SECTION;
char acDbName[30];
char acDbUser[30];
char acDbPass[30];
char acBrno[7];
EXEC SQL END DECLARE SECTION;
char str[180], *zz, str1[180];
int i;
strcpy( acDbName, "shjddb" );
strcpy( acDbUser, "shjd" );
strcpy( acDbPass, "shjd" );
EXEC SQL CONNECT TO :acDbName user :acDbUser using :acDbPass;
if (sqlca.sqlcode)
{
printf("连接数据库出错!\n");
goto EXIT;
}
memset( acBrno, 0x00, sizeof(acBrno));
EXEC SQL SELECT SITENO INTO :acBrno
FROM TEMP_BATCH
WHERE BATCHID = '20090514150559031001';
if( SQLCODE != 0 )
{
printf("运行SQL出错!\n");
goto EXIT;
}
printf("Brno=%s\n", acBrno);
EXIT:
EXEC SQL DISCONNECT :acDbName ;
printf("程序运行结束!\n");
exit(0);
} |
|