美文网首页
基于Room的sql操作

基于Room的sql操作

作者: 风骚无俩 | 来源:发表于2018-06-22 09:06 被阅读0次

如果字段发生变化 set get 方法(未显示)也要更新 否则找不到

@Entity(tableName = "marquee")
public class Marquee {
    @PrimaryKey
    private int marqueeid;
    private String message;
    private String startdate;
    private String stopdate;
    @Ignore
    private int type;
    private int status;
    @Ignore
    private List<MarqueeTime> playtimes;

插入

    <!-- 单个插入 -->
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    void insertMarquee(Marquee marquee);
    <!-- 批量插入 -->
    @Insert(onConflict = OnConflictStrategy.REPLACE)
    void insertAll(List<Marquee> marquees);

更新

   <!-- 更新对象 -->
  @Update(onConflict = OnConflictStrategy.REPLACE)
  void updateMarquee(Marquee marquee);
  <!-- 更新某个字段 -->
  @Query("update marquee set message=:msg where marqueeId=:id")
  void update(String msg,int id);

删除

   <!-- 删除单个 -->
   @Delete
   void deleteMarquee(Marquee marquee);
   <!-- 条件删除 -->
   @Query("delete from marquee  where marqueeId=:id")
   void deleteMarquee(int id);
   <!-- 删除集合 -->
   @Delete
   void deleteAll(List<Marquee > marquees);
   <!-- 删除全部 -->
   @Query("delete from marquee")
   void deleteAllMarquees();

查询

    //有效日期内的检索
    @Query("select * from marquee where date(:currentDate) between date(startDate) and date(stopDate) and status =0")
    List<Marquee> queryValidMarquee(String currentDate);
    <!-- 根据某个字段升序 -->
    @Query("select * from marquee order by marqueeId asc")
    LiveData<List<Marquee>> loadMarquees();
   <!-- 限定查询数量 -->
     @Query("select * from ward limit 1")
    LiveData<Marquee> loadMarquee();
    <!--比较查询  -->
    @Query("select * from marquee where marqueeId in (:ids)")
    List<Marquee> getMarqueeById(String... ids);

相关文章

  • 基于Room的sql操作

    如果字段发生变化 set get 方法(未显示)也要更新 否则找不到 插入 更新 删除 查询

  • HiveQL 数据查询

    HiveQL 查询操作 SQL操作•基本的Select 操作•基于Partition的查询•Join 基本的Sel...

  • Android Room Library 简单使用

    1.Android rom是谷歌推出的注解形式的sqlite操作庫 2.Room 的一些特点 编译时 sql 语句...

  • mysql注入

    说明 语言python 代码基于 tornado框架 数据库是用Navicat操作的 引入python操作SQL的...

  • Swift 数据库之GRDB

    LZGRDB 基于sql在GRDB的基础上封装一层以及自定义构造SQL语句的buffer,直接操作sql,目前只支...

  • android room自动升级数据库

    在我们平时使用room数据库版本升级的时候,对表字段的改动需要自己写sql语句来升级 (如图1),在room的新版...

  • 盲注

    盲注:1.基于布尔的SQL盲注。 2.基于时间的SQL盲注。 3.基于报错的SQL盲注。 布尔SQL盲注:逻辑判断...

  • Android Jetpack - Room

    Room 简介 Room 持久化库提供了一个基于 SQLite 的抽象层,以便在利用 SQLite 的全部功能的同...

  • Spark Sql Row 的解析

    在Spark SQL 编程时,经常需要对获取的DataFrame 对象进行map 操作。map 基于的元素是Row...

  • 通过t-sql定期自动备份SQL Server 上的所有数据库

    项目背景 解决方案方案一,是采用SQL的定时备份,建立作业来操作,这里有完整的使用手册:方案二:基于t-sql方法...

网友评论

      本文标题:基于Room的sql操作

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