这是我的table:
{
name : "TEST",
columns : {
K_A : {dataType : "string"},
DT_VAL : {dataType : "date_time"},
DT_SENT : {dataType : "date_time"},
pk: {
primaryKey: true,
keyPath: ['K_A', 'DT_VAL']
},
sent: {
keyPath : ["DT_SENT"]
}
}
}
我完全无法在这个表中插入记录。我不知道日期时间列的格式。我尝试了几乎所有的解决方案:new Date();Date.now(),new Date().toISOString(),new Date().toGMTString(),new Date().toUTCString(),new Date().toString()...什么都没用。
dt=new Date().toISOString();
record={
K_A:"A",
DT_VAL: dt,
DT_SENT: dt
};
// Using jsStore
db.connection.insert({
into: "TEST",
upsert:true
values : record,
validation: false
});
不管我做什么,我都得到了这个:
Uncaught(in promise)Object { message:“提供给操作的数据不符合要求。”,键入:“DataError”}
编辑:最终异步JS代码从代码部分滑出,并更正了keyPath。
1条答案
按热度按时间falq053o1#
问题似乎来自于使用KeyPath。
(请注意,在我的帖子中,键盘路径是['K_A','DT_TRACE'],但在我的代码中它是正确的:['K_A','DT_VAL'],只是一个复制/剪切错误,而发布)
无论如何,删除keypath并使用new Date()是可行的。