数据库模块Database

该模块包含了appcan对数据库的基础操作

appcan.database.create(name,[optId],callback) //创建一个数据库
name:要创建的数据库名
optId:创建数据库用的操作id,可为空
callback(err,data,db,dataType,optId):数据库创建成功后的回调,如果创建过程中有错误 err不为空,否则err为空,data返回的执行结果,db是数据库创建成功后的数据库对象,可 以执行相关的操作,dataType返回结果的数据类型,optId操作Id 

例如:

//创建一个名字为blog数据库
appcan.database.create('blog',function(err,data,db,dataType,optId){
    if(err){
        //创建过程中出错了
        alert('create error');
        return;
    }
    //db就是数据库对象
    if(data == 0){
        //数据库创建成功可以使用了
    }else{
        //数据库创建失败了
    }

});

db.select(sql,callback):用返回的数据库对象,进行查询操作,sql要查询用的sql语句,callback查询 返回的结果回调,同样的callback(err,data,dataType,optId)第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id

例如:

//数据库创建成功了为对象db,然后就可以直接用db执行查询操作了,查询user表中的所有用户信息
db.select('select * from user',function(err,data,dataType,optId){
    if(err){
        //如果创建过程中出错了
        return;
    }
    //data中的值为sql返回的内容

});

db.exec(sql,callback):用返回的数据库对象,进行更新操作,sql要更新用的sql语句,callback是更新 返回的结果回调,同样的callback(err,data,dataType,optId)第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id

例如:

//数据库创建成功了为对象db,然后就可以直接用db执行更新操作了,删除userId为1的用户
db.exec('delete from user where userId = 1 ',function(err,data,dataType,optId){
    if(err){
        //如果创建过程中出错了
        return;
    }
    if(data == 0){
        //执行成功了
    }else{
        //执行失败了
    }

});

db.transaction(sqlFun,callback):用返回的数据库对象,进行事务操作,sqlFun要执行用的sql语句序列函数, callback是事务返回的结果回调,同样的callback(err,data,dataType,optId)第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id

例如:

//数据库创建成功了为对象db,然后就可以直接用db执行事务操作了,删除两个用户
db.transaction({
    sqlFun:function(){
        //删除一个用户
        db.exec({sql:'delete from user where userId = 1',callback:function(){
            //do something
        }});
        //再删除一个用户
        db.exec({sql:'delete from user where userId = 2',callback:function(){
            //do something
        }});
    },
    callback:function(err,data,dataType,optId){
        if(err){
            //如果创建过程中出错了
            return;
        }
        if(data == 0){
            //执行成功了
        }else{
            //执行失败了
        }
    }
});
appcan.database.select(name,sql,callback) //在指定的数据库上执行查询操作
name:要查询的数据库名 
sql:要执行sql查询语句
callback(err,data,dataType,optId):第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id 

例如:

//你可以直接用静态方法来执行查询语句
appcan.database.select({
    name:'blog',
    sql:'select * from user',
    callback:function(err,data,dataType,optId){
        if(err){
            //如果创建过程中出错了
            return;
        }
        //data中的值为sql返回的内容
    }
});
appcan.database.exec(name,sql,callback) //在指定的数据库上执行更新操作
name:要更新的数据库名
sql:要执行sql更新语句
callback(err,data,dataType,optId):第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id 

例如:

//你可以直接用静态方法来执行更新语句
appcan.database.exec({
    name:'blog',
    sql:'select * from user',
    callback:function(err,data,dataType,optId){
        if(err){
            //如果创建过程中出错了
            return;
        }
        //data中的值为sql返回的内容
    }
});
appcan.database.transaction(name,sqlFun,callback) //在指定的数据库上执行事务操作
name:要执行事务的数据库名
sqlFun:要执行sql序列函数
callback(err,data,dataType,optId):第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id 

例如:

//数据库创建成功了为对象db,然后就可以直接用db执行事务操作了,删除两个用户
appcan.database.transaction({
    name:'blog',
    sqlFun:function(){
        //删除一个用户
        db.exec({sql:'delete from user where userId = 1',callback:function(){
            //do something
        }});
        //再删除一个用户
        db.exec({sql:'delete from user where userId = 2',callback:function(){
            //do something
        }});
    },
    callback:function(err,data,dataType,optId){
        if(err){
            //如果创建过程中出错了
            return;
        }
        if(data == 0){
            //执行成功了
        }else{
            //执行失败了
        }
    }
});
appcan.database.destory(name,[optId],callback) //销毁已经创建的数据库
    name:要销毁的数据库名称
    optId:可选,销户数据库的操作id
    callback(err,data,dataType,optId):第一个参数是Error对象如果为空则表示 没有错误,否则表示操作出错了,data表示返回的操作结果,dataType操作结果的数据类型,optId该操作id

例如:

//销毁blog数据库
appcan.database.destory({
    name:'blog',
    calllback:function(err,data,dataType,optId){
        if(data == 0){
            //关闭成功
        }else{
            //关闭失败
        }
    }
});
还需要帮助吗? 联系我们
最新更新 8th Jul 2021