MySQL Shell 8.0  /  ...  /  BSON データ型の表現の変換

このページは機械翻訳したものです。

8.2.3 BSON データ型の表現の変換

convertBsonTypes: true (--convertBsonTypes) オプションを指定して JSON 拡張で表される BSON データ型を変換すると、デフォルトで BSON 型は次のようにインポートされます:

日付 (「date」)

フィールドの値を含む単純な値。

タイムスタンプ (「timestamp」)

time_t 値を使用して作成された MySQL タイムスタンプ。

小数 (「decimal」)

小数値の文字列表現を含む単純な値。

Integer (「int」 または 「long」)

整数値。

正規表現 (「regex」 とオプション)

正規表現のみを含み、オプションを無視する文字列。 オプションが存在する場合は、警告が出力されます。

バイナリデータ (「binData」)

Base64 string.

ObjectID (「objectId」)

フィールドの値を含む単純な値。

次の制御オプションを指定して、これらの BSON タイプのマッピングおよび変換を調整できます。次のいずれかの制御オプションを使用するには、convertBsonTypes: true (--convertBsonTypes) を指定する必要があります:

ignoreDate: true (--ignoreDate)

BSON 「date」 タイプの変換を無効にします。 データは、入力ファイルとまったく同じように埋込み JSON ドキュメントとしてインポートされます。

ignoreTimestamp: true (--ignoreTimestamp)

BSON 「timestamp」 タイプの変換を無効にします。 データは、入力ファイルとまったく同じように埋込み JSON ドキュメントとしてインポートされます。

decimalAsDouble: true (--decimalAsDouble)

BSON 「decimal」 タイプの値を文字列ではなく MySQL DOUBLE タイプに変換します。

ignoreRegex: true (--ignoreRegex)

正規表現 (BSON 「regex」 タイプ) の変換を無効にします。 データは、入力ファイルとまったく同じように埋込み JSON ドキュメントとしてインポートされます。

ignoreRegexOptions: false (--ignoreRegexOptions=false)

正規表現に関連付けられたオプションを文字列に含め、正規表現自体も含めます (/<regular expression>/<options>の形式)。 デフォルトでは、オプションは無視されます (ignoreRegexOptions: true) が、オプションが存在する場合は警告が出力されます。ignoreRegexOptions を指定するには、ignoreRegex を false のデフォルトに設定する必要があります。

ignoreBinary: true (--ignoreBinary)

BSON 「binData」 タイプの変換を無効にします。 データは、入力ファイルとまったく同じように埋込み JSON ドキュメントとしてインポートされます。

次の例では、ファイル/europe/regions.json から mydb データベースの regions というリレーショナルテーブルの jsondata カラムにドキュメントをインポートします。 JSON 拡張によって表される BSON データ型は、埋込み JSON ドキュメントとしてインポートされる正規表現を除き、MySQL 表現に変換されます:

mysqlsh user@localhost/mydb --import /europe/regions.json regions jsondata --convertBsonTypes --ignoreRegex