ADO.NET Provider for Apache HBase

Build 24.0.9062

UPSERT ステートメント

UPSERT ステートメントは、既存のレコードを更新するか、既存のレコードが識別されない場合は新しいレコードを作成します。

UPSERT 構文

UPSERT 構文はINSERT 構文と同じです。Apache HBase はVALUES 句で指定された入力を使用して、レコードがすでに存在するかどうかを判断します。レコードが存在しない場合は、レコードの挿入に必要なすべてのカラムが指定される必要があります。テーブル固有の情報については、データモデル を参照してください。

UPSERT INTO <table_name> 
( <column_reference> [ , ... ] )
VALUES 
( { <expression> | NULL } [ , ... ] ) 
  

<expression> ::=
  | @ <parameter> 
  | ?
  | <literal>

次の例に示すように、ExecuteNonQuery メソッドを使って、データ操作コマンドを発行し影響を受けた行を取得できます。

C#

String connectionString = "Server=127.0.0.1;Port=8080;";
int rowsAffected;
using (ApacheHBaseConnection connection = new ApacheHBaseConnection(connectionString)) {
  ApacheHBaseCommand cmd = new ApacheHBaseCommand("UPSERT INTO Account (Name) VALUES ('Floppy Disks')", connection);
  rowsAffected = cmd.ExecuteNonQuery();
}

VB.NET

Dim connectionString As [String] = "Server=127.0.0.1;Port=8080;"
Dim rowsAffected As [Integer]
Using connection As New ApacheHBaseConnection(connectionString)
  Dim cmd As New ApacheHBaseCommand("UPSERT INTO Account (Name) VALUES ('Floppy Disks')", connection)
  rowsAffected = cmd.ExecuteNonQuery()
End Using

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