埋込みレコードの使用
レコード・エントリは様々な型のフィールドを持つことができます。ただし、埋込みレコードはデータが相対的に静的の場合のみ使用してください。一般的に、特に子データセットが大きいかサイズが変更する場合に、埋込みレコードよりも子表が優れた解決策を提供します。
RECORD()
文を使用して表フィールドをレコードとして宣言します。
主キーがUIDで2番目のフィールドにレコードを持つシンプルな2つのフィールドの表を定義するには、次のDDL文を使用します。
CREATE TABLE myTable (
uid INTEGER,
myRecord RECORD(firstField STRING, secondField INTEGER),
PRIMARY KEY (uid)
)
埋込みレコード・フィールドで、DEFAULT
およびNOT NULL
制約はサポートされていません。ただし、これらの制約は埋込みレコードの個々のフィールドには適用できます。詳細は、「フィールド制約」を参照してください。
埋込みレコードに書き込むには、Javascriptオブジェクトとして作成します。
var mrec = {firstField: "An embedded record",
secondField: 3388};
var row = {uid: 0,
myRecord: mrec
};
store.put('myTable', row,
function (err) {
if (err)
throw err;
else {
console.log("Row inserted.");
}
});
次に、通常の方法でそのフィールドを読み取ることができます。
var primaryKey = {uid: 0};
store.get('myTable', primaryKey,
function (err, returnRow) {
if (err)
throw err;
else {
console.log(returnRow.currentRow.myRecord);
store.close();
}
});