目录
com.github.satyan:sugar可以让用户在Android本地进行数据的存储,使用起来很方便
一、注入依赖
dependencies { compile 'com.github.satyan:sugar:1.5' }
二、AndroidManifest.xml中配置相关参数
<application android:name="com.code.app.MyApplication"> 1:设置数据库名称 <meta-data android:name="DATABASE" android:value="mydb.db" /> 2:设置数据库版本 <meta-data android:name="VERSION" android:value="1" /> 3:设置是否记录日志 <meta-data android:name="QUERY_LOG" android:value="true" /> 4:设置数据库实体存的文件路径 <meta-data android:name="DOMAIN_PACKAGE_NAME" android:value="com.code.model" /> </application>
三、定义实体表文件
@Table(name = "City")
public class City extends SugarRecord implements Serializable{
private Long id;
@Column(name = "cityTitle")
private String cityTitle;
@Override
public String toString() {
return "City{" +
"id=" + id +
", cityTitle='" + cityTitle + '\'' +
'}';
}
@Override
public Long getId() {
return id;
}
@Override
public void setId(Long id) {
this.id = id;
}
public String getCityTitle() {
return cityTitle;
}
public void setCityTitle(String cityTitle) {
this.cityTitle = cityTitle;
}
}
说明:
@Table(name = "City")是定义表名称
@Column(name = "cityTitle")是定义表字段
Long id;是表的自增id
四、新增数据
City city=new City();
city.setCityTitle("新增的内容信息");
city.save();
五、查询数据
1:查询全部
List<City> list_result = City.listAll(City.class);
说明:list_result 就是返回的表City所有的数据信息
2:根据id查询数据
List<City> list_result = City.findWithQuery(City.class, "Select * from Citywhere id= " + 查询的id参数 + "");
说明:其中的id参数就是所要查询的数据信息
3:根据条件查询
List<User> Stations = User.findWithQuery(User.class, "Select * from User where userPhone = '" + mLoginNumber.getText().toString() + "' and userPswd= " + mLoginPswd.getText().toString());
说明:这个是根据User表里面的userPhone和userPswd进行数据的查询
六、删除数据
Citydelete = City.findById(City.class, sceneryModel.getId()); delete.delete();
说明:根据数据的id进行数据的删除
七、修改数据
Scenery scenery= Scenery.findById(Scenery.class, sceneryModel.getId()); scenery.setCityId(mlistData.get(posIndex).getId()); scenery.setSceneryImage(imagePath); scenery.save();
说明:修改数据是先根据id查询到对应的数据信息,然后对需要修改的数据字段进行赋值