#define    EXTERN

#include   "btpcomm.h"
#include   "btpcmmcr.h"
#include   "sqlenv.h"

main()
{

EXEC SQL INCLUDE SQLCA;

EXEC SQL BEGIN DECLARE SECTION ;
 char     txnbrh[12+1];
 char     txndt[10+1];
 long     txncnt;

EXEC SQL END DECLARE SECTION;

EXEC SQL update gcdgbnk set devlogrrn=0 where 1=1;
   if ((sqlca.sqlcode != 0 ) && (sqlca.sqlcode != 100))
   {
      sprintf( cGlbWk, "update gcdgbnk err %d", sqlca.sqlcode );
      BtpApDisp( cPrgID, cGlbWk );
      BtpBatReturn(BATPROCDRUNERR, "數據庫操作失敗");
      return(-1);
   }
EXEC SQL INSERT INTO nmgtact SELECT brhid, :txndt, count(*), sum(txnamt)
       FROM gctact
       WHERE txndate = :txndt
       AND   mchtype = '6050'
       AND   revcd   = '0'
       GROUP BY brhid;
   if ((sqlca.sqlcode != 0 ) && (sqlca.sqlcode != 100))
   {
      sprintf( cGlbWk, "insert into nmgtact err %d", sqlca.sqlcode );
      BtpApDisp( cPrgID, cGlbWk );
      BtpBatReturn(BATPROCDRUNERR, "數據庫操作失敗");
      return(-1);
   }
   BtpBatReturn(BATPROCDRUNOK, "");
   return;
}

靜態嵌入SQL語句的應用程序: 
1)include語句定義并描敘了SQLCA的結構。SQLCA用于應用程序和數據庫之間的通訊,其中SQLCODE返回SQL語句執行后的結果狀態。
2)在BEGIN   DECLARE   SECTION和END   DECLARE   SECTION之間定義了宿主變量。宿主變量可被SQL語句引用,也可以被C語言語句引用。它用于將程序中的數據通過SQL語句傳給數據庫管理器,或從數據庫管理器接收查詢的結果。在SQL語句中,主變量前均有“:”標志以示區別
3)在gctact中選擇brhid,插入nmgtact表;