小编Mar*_*ood的帖子

node.js脚本中的Sqlite SQLITE_MISUSE错误

当我使用此查询启动代码时,有时我可以看到列出的所有表,有时只有一个,我总是得到这个错误:

查询错误:错误:SQLITE_MISUSE:未知错误

我已经读过,当SQLITE API使用不当时会发生SQLITE_MISUSE.你能帮助我吗,因为我在这段代码中找不到什么错误.

编辑.我已经对代码进行了更改以摆脱竞争问题.

仍然会出现带有SQLITE_MISUSE wrror的消息,但消失的表问题已经消失.在我的查询中竞争是这样的.

这是代码.

var sqlite3 = require("node-sqlite3");
var fs = require('fs');

var query_count;
var init = function (response) {
    var db = new sqlite3.Database("test.db", function() {

        fs.readFile('./assets/sql/initDB.sql', function(err,data){
            if(err) {
                console.error("Could not open file: %s", err);
                return;
            }

            var query = data.toString('utf8');
            queries = query.split(";");

            db.serialize(function() {
                query_count = queries.length;
                for(var i=0; i<queries.length; i++) {
                    queries[i] = queries[i].replace("\r\n","");
                    db.run(queries[i], function(error) {
                        if(error) {
                            console.log("Query Error: "+error);
                        }

                        query_count--;

                        if( query_count <= 0 ) {
                            db.close(); …
Run Code Online (Sandbox Code Playgroud)

javascript sqlite node.js

4
推荐指数
1
解决办法
7463
查看次数

RxJava Android链接了许多不同类型的请求

我对Observable.zip函数有点"estetic"问题.你这样使用它:

Observerbale.zip(
    reqA, reqB, reqC,
    (a, b, c) -> {/*deal with them*/});
Run Code Online (Sandbox Code Playgroud)

请求数量等于"处理它"功能中的参数数量.现在,如果你有更多的请求,比如6,你将最终得到函数,它需要6个参数(假设它们都有不同的类型).它只是感觉不干净.有没有办法将它们包装在一个类中,例如属性?

我现在的真实问题是,我使用zip来加载设置数据:

Observable.zip(
    loadAPIMenus(),                        //1.
    databaseService.readFavorites(),       //2.
    (menuResponse, favorites) -> loadFavorites(menuResponse, favorites)) //3.
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe(
        menus -> menuSubscriber.onNext(menus), //4.
        error -> menuSubscriber.onError(error));
Run Code Online (Sandbox Code Playgroud)
  1. 从rest api加载列表视图的项目
  2. 加载这些项目的ID,这些项目在db中存储为收藏夹
  3. 合并两个列表,因此最喜欢的项目是isFavorite>设置为true
  4. 更新列表视图

现在不是那么糟糕.但我想在#3处增加2-3个对其他数据结束函数的请求将增长到具有太多函数参数的4行猛犸象.

我想,我可以使用Observable.zip嵌套在另一个中,但可能很危险.有没有更优雅的方式来包裹这些参数?

我很高兴看到你的建议.

java android rx-java rx-android reactivex

2
推荐指数
1
解决办法
1726
查看次数

标签 统计

android ×1

java ×1

javascript ×1

node.js ×1

reactivex ×1

rx-android ×1

rx-java ×1

sqlite ×1