• Duutils创建数据库


    //创建数据库

    DbUtils db = DbUtils.create(Zhuce.this, "callme");//参数2为库名
                        try {
                            db.createTableIfNotExist(Dbutils.class);//与之相连的vo类就是表
                            db.save(new Dbutils(getphone, getpass));//将数据保存在数据库
      
                      } catch (DbException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }

    vo类

    int id;
        String name;
        String pass;
        public Dbutils(String name, String pass) {
            super();
            this.name = name;
            this.pass = pass;
        }

    注意:一定要有id属性

    //查询数据库

    DbUtils db = DbUtils.create(Zhuce.this, "callme");//参数2为库名

        List<Object> list = db.findAll(Selector.from(Dbutils.class)
                                .where("name", "=", getname));//根据条件查询
                        if (list.size() > 0) {//如果有就登录成功
                            Toast.makeText(Login.this, "登录成功", 0).show();
                            Intent intent = new Intent(Login.this,
                                    TwoActivity.class);
                            startActivity(intent);
                        }

     //一般用法

    DbUtils db = DbUtils.create(this);
    User user = new User(); //这里需要注意的是User对象必须有id属性,或者有通过@ID注解的属性
    user.setEmail("wyouflf@qq.com");
    user.setName("wyouflf");
    db.save(user); // 使用saveBindingId保存实体时会为实体的id赋值
    
    ...
    // 查找
    Parent entity = db.findById(Parent.class, parent.getId());
    List<Parent> list = db.findAll(Parent.class);//通过类型查找
    
    Parent Parent = db.findFirst(Selector.from(Parent.class).where("name","=","test"));
    
    // IS NULL
    Parent Parent = db.findFirst(Selector.from(Parent.class).where("name","=", null));
    // IS NOT NULL
    Parent Parent = db.findFirst(Selector.from(Parent.class).where("name","!=", null));
    
    // WHERE id<54 AND (age>20 OR age<30) ORDER BY id LIMIT pageSize OFFSET pageOffset
    List<Parent> list = db.findAll(Selector.from(Parent.class)
                                       .where("id" ,"<", 54)
                                       .and(WhereBuilder.b("age", ">", 20).or("age", " < ", 30))
                                       .orderBy("id")
                                       .limit(pageSize)
                                       .offset(pageSize * pageIndex));
    
    // op为"in"时,最后一个参数必须是数组或Iterable的实现类(例如List等)
    Parent test = db.findFirst(Selector.from(Parent.class).where("id", "in", new int[]{1, 2, 3}));
    // op为"between"时,最后一个参数必须是数组或Iterable的实现类(例如List等)
    Parent test = db.findFirst(Selector.from(Parent.class).where("id", "between", new String[]{"1", "5"}));
    
    DbModel dbModel = db.findDbModelAll(Selector.from(Parent.class).select("name"));//select("name")只取出name列
    List<DbModel> dbModels = db.findDbModelAll(Selector.from(Parent.class).groupBy("name").select("name", "count(name)"));
    ...
    
    List<DbModel> dbModels = db.findDbModelAll(sql); // 自定义sql查询
    db.execNonQuery(sql) // 执行自定义sql
  • 相关阅读:
    分布式事务与Seate框架(3)——Seata的AT模式实现原理
    MySQL是如何实现事务隔离?
    分布式事务与Seate框架(2)——Seata实践
    分布式事务与Seate框架(1)——分布式事务理论
    docker的安装以及使用命令
    Sentinel高级
    Sentinel熔断降级
    typora+PicGo+gitee搭建免费的的床
    Jmeter + Grafana + InfluxDB 性能测试监控
    Jmeter-逻辑控制器ForEach Controller的实例运用
  • 原文地址:https://www.cnblogs.com/weiyangge/p/5441267.html
Copyright © 2020-2023  润新知