zoukankan      html  css  js  c++  java
  • esql开发总结


    1 定义或者声明方法
    int method(char *arg1,char* arg2...);
      实现方法
    int method(char *arg1,char* arg2...)
        EXEC SQL BEGIN DECLARE SECTION;
            char *arg1;
            char* arg2;
       EXEC SQL END DECLARE SECTION;
     {
        EXEC SQL BEGIN DECLARE SECTION;
        定义自己的变量。仅仅有此处定义的局部变量能够在sql中直接使用。
        EXEC SQL END DECLARE SECTION;
        初始化变量
         memset(sqlbuf,0x00,sizeof(sqlbuf));
         strncpy(from,to);
         deccvdbl(0,&decimal类型变量);
         return 0;
     }
     2 在.h中定义结构体
       如头文件test.h 内容例如以下:
        ...
        EXEC SQL BEGIN DECLARE SECTION;
        typedef struct  LYNAME{
            decimal x ;     
            char y[1+1];
            char z[1+1];       
            int u;
        }x;
        EXEC SQL END DECLARE SECTION;
        ...
        正确引用结构体LYNAME,需使用下边的引入方式
        EXEC SQL include 相对路径/test.h;
        而不是
        #include<test.h>
        
    3 经常使用的打印日志方法
      printf("[%s][%d] GetTaxData start ",__FILE__, __LINE__);
      txlog(LOG_INFO,"current ywrq[%s] =%s ",__FILE__, __LINE__,x,y);
      #define etxlog(loglevel,format,args...) txlog(loglevel,format,__FILE__,__LINE__,##args);txlogflush()
      #define eetxlog(loglevel,format) txlog(loglevel,format,__FILE__,__LINE__);txlogflush()
      eetxlog(LOG_INFO,"INFO:SSNjbbzlZCZRDZ end.FAILED");
      sprintf(pOutbuf,"FAILED:SELECT NJGRJH.jhbh[%s]qybh[%s]grbh[%s]sqlcode[%d]"
                    ,tb_njdl.jhbh,tb_njdl.qybh,val[0],sqlca.sqlcode);
      etxlog(LOG_ERROR,"%s",pOutbuf);
      fprintf(fpLog,"%s|%d|%d|%s|%d|%s ",strSerial,tb_njdl.clcs,nErrNum++,"数据库错误",nLineCnt,"数据库错误");
     
      4 打印decimal公共方法
     void PrintDecimalToString(ptr_val,desc)
    EXEC SQL BEGIN DECLARE SECTION;
            decimal *ptr_val;
            char *desc;
    EXEC SQL END DECLARE SECTION;
    {
      char decimalResult[30];
      memset(decimalResult,0x00,sizeof(decimalResult));    
      dectoasc(ptr_val,decimalResult,29,8);//将decmail值变成asc码
      txlog(LOG_INFO,"%s = [%s] ",__FILE__, __LINE__,desc,decimalResult);
      printf("[%s][%d] %s=[%s] ",__FILE__, __LINE__,desc,decimalResult);
    }
  • 相关阅读:
    二分+RMQ/双端队列/尺取法 HDOJ 5289 Assignment
    思维题 HDOJ 5288 OO’s Sequence
    树形DP Codeforces Round #135 (Div. 2) D. Choosing Capital for Treeland
    最大流增广路(KM算法) HDOJ 1853 Cyclic Tour
    最大流增广路(KM算法) HDOJ 1533 Going Home
    最大流增广路(KM算法) HDOJ 2255 奔小康赚大钱
    Complete the Word CodeForces
    Gadgets for dollars and pounds CodeForces
    Vasya and Basketball CodeForces
    Carries SCU
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6900843.html
Copyright © 2011-2022 走看看