當您指定 convertBsonTypes: true (--convertBsonTypes) 選項來轉換以 JSON 延伸表示的 BSON 資料類型時,預設會以下列方式匯入 BSON 類型
- 日期 (「date」)
包含欄位值的簡單值。
- 時間戳記 (「timestamp」)
使用
time_t值建立的 MySQL 時間戳記。- 小數 (「decimal」)
包含小數值字串表示法的簡單值。
- 整數 (「int」 或 「long」)
整數值。
- 正規表示式 (「regex」 加上選項)
僅包含正規表示式的字串,並忽略選項。如果有選項存在,則會列印警告。
- 二進位資料 (「binData」)
Base64 字串。
- 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) 在字串中包含與正規表示式相關聯的選項,以及正規表示式本身 (格式為
/<正規表示式>/<選項>)。預設會忽略選項 (ignoreRegexOptions: true),但如果存在任何選項,則會列印警告。ignoreRegex必須設定為預設的false才能指定ignoreRegexOptions。-
ignoreBinary: true(--ignoreBinary) 停用 BSON 「binData」 類型的轉換。資料會完全依照輸入檔中的形式匯入為內嵌 JSON 文件。
以下範例將文件從檔案 /europe/regions.json 匯入到資料庫 mydb 中名為 regions 的關係表格中的欄位 jsondata。以 JSON 延伸表示的 BSON 資料類型會轉換為 MySQL 表示法,但正規表示式除外,它們會匯入為內嵌 JSON 文件
mysqlsh user@localhost/mydb --import /europe/regions.json regions jsondata --convertBsonTypes --ignoreRegex