JSONの使用
JSONデータ型はプレビュー機能として使用できます。
JSONデータ型は、主キーまたはシャード・キーの一部として使用できません。このリリースでは、索引に加えることもできません。
主キーがUIDで2番目のフィールドにJSONデータ・フィールドを持つシンプルな2つのフィールドの表を定義するには、次のDDL文を使用します。
CREATE TABLE myJsonTable (
uid INTEGER,
myJSON JSON,
PRIMARY KEY (uid)
)
このデータ型に対して書き込むデータは、文字列として格納された任意の有効なJSONにすることができます。たとえば、次のすべてが有効です。
var jsonNumber = "2";
var jsonString = "\"a json string\"";
var jsonObject_null = "{}";
var jsonObject = "{\"a\": 1.006, \"b\": null," +
"\"bool\" : true, \"map\": {\"m1\": 5}," +
"\"ar\" : [1,2.7,3]}";
var jsonNull = "null";
前述のように定義した表にJSON値を格納するには、次のようにします。
var row = {uid: 0,
myJson: "[1,2.8,1001,322987]",
};
store.put('myJsonTable', row,
function (err) {
if (err)
throw err;
else {
console.log("Row inserted.");
}
});
取得するには、次のようにします。
var key = {};
store.tableIterator('myJsonTable', key, null,
function (err, iterator) {
if (err)
throw err;
else {
// Configure Iterator event done
iterator.on('done', function() {
store.close();
});
console.log("Retrieved rows:");
iterator.forEach(function (err, returnRow) {
if (err)
throw err;
else
console.log(returnRow.row);
console.log('\n');
});
}
});