Dexie - 使用新字段扩展现有 table
Dexie - Extend existing table with new fields
我正在尝试使用 Dexie 修改我的 Angular2 应用程序中现有 table 的 table 结构。
该应用程序已经实现了 table 的第 2 版,现在我必须使用两个新信息扩展 mdValuta table:f3、f4
这是代码:
super('WEB_IndexedDB');
this.version(1).stores({
mdValuta:'codudm,numdec,numdecpre'
});
this.version(2).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2'
});
this.version(3).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2,f3,f4'
});
我不知道为什么,当我执行应用程序时,我在控制台中收到此错误并且未对 mdValuta
table.
应用任何更改
OpenFailedError: ConstraintError A mutation operation in the
transaction failed because a constraint was not satisfied. For
example, an object such as an object store or index already exists and
a new one was being attempted to be created.
我错过了什么?
也许问题出在 super('WEB_IndexedDB') 函数中...
以下代码有效,创建了版本 3 table:
var db = new Dexie ('WEB_IndexedDB');
db.version(1).stores({
mdValuta:'codudm,numdec,numdecpre'
});
db.version(2).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2'
});
db.version(3).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2,f3,f4'
});
db.open();
我正在尝试使用 Dexie 修改我的 Angular2 应用程序中现有 table 的 table 结构。
该应用程序已经实现了 table 的第 2 版,现在我必须使用两个新信息扩展 mdValuta table:f3、f4
这是代码:
super('WEB_IndexedDB');
this.version(1).stores({
mdValuta:'codudm,numdec,numdecpre'
});
this.version(2).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2'
});
this.version(3).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2,f3,f4'
});
我不知道为什么,当我执行应用程序时,我在控制台中收到此错误并且未对 mdValuta
table.
OpenFailedError: ConstraintError A mutation operation in the transaction failed because a constraint was not satisfied. For example, an object such as an object store or index already exists and a new one was being attempted to be created.
我错过了什么?
也许问题出在 super('WEB_IndexedDB') 函数中... 以下代码有效,创建了版本 3 table:
var db = new Dexie ('WEB_IndexedDB');
db.version(1).stores({
mdValuta:'codudm,numdec,numdecpre'
});
db.version(2).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2'
});
db.version(3).stores({
mdValuta:'codudm,numdec,numdecpre,f1,f2,f3,f4'
});
db.open();