美文网首页
Flutte sqflite->SQLdb 增删改查 数据持久化

Flutte sqflite->SQLdb 增删改查 数据持久化

作者: 粤码粤帅 | 来源:发表于2019-10-15 21:44 被阅读0次

    我写项目喜欢先造些轮子,因为我真的很懒。所以我决定封装一个史上最简单的数据持久化工具类。

    这个工具基于Flutter项目使用,Dart其他应该也是支持的。
    支持Andorid、iOS、web。

    我们讨厌Dart的异步,因此我利用Flutter的回调函数处理,尽到一行代码执行一个流程。

    去片....!

    如图

    使用之前:
    请先加载:sqflite: ^1.1.7+1 因为SQLdb是基于sqflite来封装的。
    https://pub.dev/packages/sqflite
    sqflite已经使用已经很简单,但我希望更简单一些。

    import 'SQLdb/SQLdb.dart';

    数据库表名
    final String table;

    【more】true 此模式的数据表会自动创建一个自增字段"_id"作为数据插入索引。此模式创建的表,当调用【insert】时,旧数据不会被替换

    【more】false 默认模式。被创建的表会按表传入的json原样进入字段以及类型复制,每一次调用【insert】时,新数据会替换旧数据。

    final bool more;


    var data = {
      "id": 14,
      "level": "A,B,C,E",
      "mobile": "13800138000",
      "uid": "admin",
      "name": "kkk",
      "step": 2
    };
    

    初始化

    //TODO:初始化自动创建db文件。
    SQLdb.init("member_check_login", json: data);
    

    //TODO: 增加数据
    SQLdb.init("member_check_login", json: data).insert(data);
    

    //TODO: 更新数据
    SQLdb.init("member_check_login").update(json, where: "id = 3",onChanged: (count){
      print("更新数据库:${count}");
    });
    

    //TODO: 查询数据
    SQLdb.init("member_check_login").getList((list){
      print("查询数据:${list}");
    });
    

    //TODO:删除数据
    SQLdb.init("member_check_login").deleteList(onChanged: (count){
      print("删除数据:${count}");
    });
    

    源码
    https://github.com/MuZiLee/SQLdb

    相关文章

      网友评论

          本文标题:Flutte sqflite->SQLdb 增删改查 数据持久化

          本文链接:https://www.haomeiwen.com/subject/eaeemctx.html