ACIBulkInit ()

ACIBulkInit()

作用:

初始化大容量导入句柄。初始句柄不是分配句柄,大容量导入的句柄分配是用 ACIHandleAlloc 接口调用生成。

语法:

sword ACIBulkInit(ACISvcCtx *pSvc,
                  ACIHIMP *pImp,
                  char *schema,
                  char *table,
                  char *listcol,
                  ACIError *errhp)

参数:

  • pSvc (in)

上下文句柄指针。

  • pImp (in/out)

大容量导入句柄。

  • schema (in)

表的模式名

  • table (in)

表名

  • listcol (in)

列的格式化描述

  • errhp (in/out)

ACI错误句柄。 如果有错误,则将其记录在err中,并且此函数返回ACI_ERROR。 通过调用 ACIErrorGet 获得诊断信息。

说明:

在插入的数据的顺序与表中的顺序不一致 或者 并非导入数据库中所有列时,listcol 参数需要提供符合格式的列描述语句,如“B text,A text”

//设置列顺序
char * collist = "B text,A text"
r = ACIBulkInit(svc,imp,NULL,"bulkTab", collist,err);

//设置部分列:数据库中有A、B、C三列,只想导入A、B两列,如下设置也可以
char * collist = "B text,A text"
r = ACIBulkInit(svc,imp,NULL,"bulkTab", collist,err);