5.1 建立文件

一旦建立集合,它就可以儲存 JSON 文件。您可以透過將 JSON 資料結構傳遞至 Collection.add() 函數來儲存文件。有些語言直接支援 JSON 資料,其他語言則有等效的語法來表示該資料。實作 X DevAPI 的 MySQL 連接器旨在實作對連接器特定語言原生所有 JSON 方法的支援。

此外,在某些 MySQL 連接器中,可以使用泛型的 DbDoc 物件。建立它們最方便的方法是呼叫 Collection.newDoc()DbDoc 是一種表示 JSON 資料類型的資料類型,而 X DevAPI 並未定義其如何實作。實作 X DevAPI 的語言可以自由地遵循具有 getter 和 setter 方法的物件導向方法,或使用具有公用成員的 C 結構樣式。

對於嚴格型別的語言,可以根據集合的文件結構定義來建立類別檔案。MySQL Shell 可用於建立這些檔案。

表 5.1 不同類型文件物件、其支援語言及其優點

文件物件

支援的語言

優點

原生 JSON

指令碼語言 (JavaScript、Python)

易於使用

等效的 JSON 語法

C# (匿名型別、ExpandoObject)

易於使用

DbDoc

所有語言

在各種語言之間統一

產生的 Doc 類別

嚴格型別的語言 (C#)

自然的使用方式


下列範例顯示將文件插入集合的不同方法。

// Create a new collection 'my_collection'
var myColl = db.createCollection('my_collection');

// Insert JSON data directly
myColl.add({_id: '8901', name: 'Mats', age: 21}).execute();

// Inserting several docs at once
myColl.add([ {_id: '8902', name: 'Lotte', age: 24},
  {_id: '8903', name: 'Vera', age: 39} ]).execute();