7.3.24. load
¶
7.3.24.1. 概要¶
load
は、使用しているデータベースのテーブルにレコードを登録し、カラムの値を更新します。
7.3.24.2. 構文¶
load values table [columns [ifexists [input_type]]]
7.3.24.3. 引数¶
このセクションではすべての引数について説明します。
values
input_typeに指定する形式で登録するレコードの値を表現した文字列を渡します。 input_typeがjsonである場合には、以下のいずれかの形式が使用できます。
Format 1:
- [[カラム名1, カラム名2,..], [カラム値1, カラム値2,..], [カラム値1, カラム値2,..],..]
Format 2:
- [{カラム名1: カラム値1, カラム名2: カラム値2}, {カラム名1: カラム値1, カラム名2: カラム値2},..]
形式1の[カラム名1, カラム名2,..]の要素は
columns
引数が省略された場合のみ有効です。対象のテーブルが主キーを持つテーブルであった場合は、カラム名の中に
_key
(主キーを示す疑似カラム名)が含まれていなければなりません。
values
引数が省略された場合には、括弧の対応が取れるまで標準入力からvalues
の値を読み取ります。引数として値を指定する場合は、文字列のエスケープが必要ですが、標準入力から与える文字列はエスケープする必要がありません。続きの文字列については、空白文字(' ')をエスケープする必要はありません。
table
レコードを追加しようとするテーブルの名前を指定します。
columns
テーブルに登録するレコードに値を設定するカラム名のリストを、カンマ区切りで指定します。
ifexists
指定した主キーに対応するレコードが既にテーブルに登録済みであった場合に実行するscript形式のgrn_expr
文字列を指定します。ifexists
にgrn_expr
が指定された場合は、式の値が真である場合に限り、その他のカラムの値が更新されます。(デフォルトはtrue)
input_type
入力形式を指定します。JSONのみに対応しています。
7.3.24.4. 使い方¶
テーブルEntryにレコードを登録します。:
load --table Entry --input_type json --values [{\"_key\":\"Groonga\",\"body\":\"It's very fast!!\"}]
[1]
標準入力からvaluesの値を与えます。:
load --table Entry --input_type json
[
{"_key": "Groonga", "body": "It's very fast!!"}
]
[1]