ODBC Driver for Apache Impala

Build 23.0.8839

バッチ処理

CData ODBC Driver for Apache Impala は、ODBC Batch API を介してApache Impala で一括ロードをサポートします。本製品 は、関連するSQL データ操作ステートメントを1つのバルクAPI 要求に変換することによって同時に実行できます。アプリケーションのコードでは、本製品 は一連の入力とパラメータ化されたクエリに基づいてステートメントを実行します。

バッチ更新プロシージャ

バッチ更新を実行するには、次の手順を実行してください。

  1. ステートメント内の各パラメータのカラム値の配列を定義します。
  2. SQL_ATTR_PARAMSET_SIZE ステートメント属性を設定します。
  3. 各配列を各パラメータにバインドします。
  4. パラメータ化されたステートメントを実行します。

一括挿入

次のコードは、SQLSetStmtAttr、SQLBindParameter、およびSQLExecDirect を使って一括挿入を実行する方法を示します。

SQLHSTMT pHstmt = NULL;
const int MAX_INSERT_COUNT = 2;
const int MAX_BUFFER_SIZE = 100;
char CompanyNameArray[MAX_INSERT_COUNT][MAX_BUFFER_SIZE] = { 0 };
SQLLEN cbCompanyNameArray[MAX_INSERT_COUNT] = { 0 };
...
retcode = SQLSetStmtAttr(pHstmt, SQL_ATTR_PARAMSET_SIZE, (SQLPOINTER)MAX_INSERT_COUNT, 0);
char *CompanyName1 = "Jon Deere", *CompanyName2 = "RSSBus Inc.";
cbCompanyNameArray[0] = strlen(CompanyName1);
cbCompanyNameArray[1] = strlen(CompanyName2);
memcpy(CompanyNameArray[0], CompanyName1, strlen(CompanyName1));
memcpy(CompanyNameArray[1], CompanyName2, strlen(CompanyName2));
retcode = SQLBindParameter(pHstmt, 1, SQL_PARAM_INPUT, SQL_C_CHAR, SQL_CHAR, 0, 0, CompanyNameArray, MAX_BUFFER_SIZE, cbCompanyNameArray);

retcode = SQLExecDirect(pHstmt, (SQLCHAR*) "INSERT INTO [CData].[Default].Customers (CompanyName) VALUES (?)", SQL_NTS); 

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839