WebSQL:插入多行/事务
解析大型 CSV 时,我在 db.transaction 中异步调用 INSERT 时遇到问题。
问题 #1:
while(...parse CSV...) {
db.transaction{
...tx.executeSql(INSERT...
}
}
...它将输入最后一行 X 次(X ... CSV 中的行数)
问题 #2:
db.transaction{
while(...parse CSV...) {
...tx.executeSql(INSERT...
}
}
...它将达到一些限制并且不会插入任何内容(如果我不使用 while,但对于 <10 之类的情况,它可以工作,但这个限制非常小)。
它类似于这个问题:Web SQL Database + Javascript循环,但是递归将在这里没有帮助。
谢谢!
I have problem with asynchronous call of INSERT in db.transaction when parsing large CSV.
Problem #1:
while(...parse CSV...) {
db.transaction{
...tx.executeSql(INSERT...
}
}
...it will enter the last row X times (X ... number of rows in CSV)
Problem #2:
db.transaction{
while(...parse CSV...) {
...tx.executeSql(INSERT...
}
}
...it will reach some limit and will not insert anything (if I don't use while, but for like <10, it works, but this limit is quite small).
It is similar to this question: Web SQL Database + Javascript loop, but the recursion will not help here.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我找到了解决方案。最好将这两件事分开 - 解析 CSV,然后调用一些函数,例如 saveOneRow(column1, column2...) 并在此函数中进行事务处理。
I've found a sollution. It is better to divide these two things - parse CSV and then call some function like saveOneRow(column1, column2...) with transaction in this function.