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);
    }
  • 相关阅读:
    集成学习方法
    nlp知识
    kaggle竞赛入门整理
    pandas知识点
    EM算法
    特征工程
    【clustering】之K-means && K-medoids
    sklearn学习笔记
    周总结十二
    《如何高效学习》读书笔记五
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6900843.html
Copyright © 2011-2022 走看看