大佬教程收集整理的这篇文章主要介绍了Android使用SQLite数据库的示例,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
sqliteDatabase db= sqliteDatabase.openOrCreateDatabase( "/data/data/" + getPackagename() + "/test.db",null);
public class MysqLiteHelper extends sqliteOpenHelper{ public MysqLiteHelper(Context context) { super(context,"MysqLite.db",null,1); //传入四个参数 //第一个参数context 上下文对象 //第二个参数MysqLite.db 数据库名称(文件名) //第三个参数一般为null //第四个参数数据库版本号,这里写1 } @Override public void onCreate(sqliteDatabase db) { /* 数据库创建的时候会回调此方法,可以用db对象执行sql语 * 句,创建所需要的表 */ } @Override public void onUpgrade(sqliteDatabase db,int oldVersion,int newVersion) { //当数据库升级时调用此方法 } }
sqliteOpenHelper dbHelper = new MysqLiteHelper(this); sqliteDatabase db = dbHelper.getWritableDatabase();
private void createTable(sqliteDatabase db){ //sql语句 String sql = "create table stutable(_id INTEGER PRIMary key autoincrement,@R_768_4687@t,age integer)"; db.execsql(sql); }
//sqliteDatabase类中提供的方法 public long insert( String table,//要操作表名 String nullColumnHack,//空列的默认值 ContentValues values //ContentValues封装了列名称和列值的Map ); private void insert@R_980_10586@ble(sqliteDatabase db){ ContentValues cv = new ContentValues(); cv.put("name","wxq"); cv.put("age",11); db.insert("stutable",cv); }
//sqliteDatabase类中提供的方法 public int delete( String table,//表名称 String whereClause,//删除条件 String[] whereArgs); //删除条件值数组 private void delete@R_980_10586@ble(sqliteDatabase db){ //删除条件,这里以name为条件,也可以是age = ? String whereClasuse = "name = ?"; //删除条件参数,String[] whereArgs = new String[]{"wxq"}; //执行删除 db.delete("stutable",whereClasuse,whereArgs); }
//sqliteDatabase类中提供的方法 public int update( //表名称 String table,//和行列ContentValues键值对应的key-value ContentValues values,//更新条件 String whereClause,//更新条件数组 String[] whereArgs ); private void update@R_980_10586@ble(sqliteDatabase db){ //实例化ContentValues ContentValues cv= new ContentValues(); cv.put("age",23); //更新条件 String whereClause = "name = ?"; //更新条件数组 String[] whereArgs = new String[]{"wxq"}; db.update("stutable",cv,whereClause,whereArgs); }
public cursor rawQuery( String sql,//查询的sql语句 String[] SELEctionArgs//当sql语句中含有?,这里代表值 ); public void query@R_980_10586@ble(sqliteDatabase db){ String sql = "SELEct * from stutable";//全查 cursor c = db.rawQuery(sql,null);//这里会返回一个cursor(游标)对象 }
public class HerosqliteManager { private sqliteOpenHelper dbHelper; private sqliteDatabase db; private static HerosqliteManager instance; private static final String table_NAME = "hero"; private static final String NAME_FIELD = "name"; private static final String ICOID_FIELD = "icoId"; private static final String ATTACK_FIELD = "attack"; private static final String DEFENSE_FIELD = "defense"; public static HerosqliteManager geTinstance() { if (instance == null) { synchronized (HerosqliteManager.class) { if (instance == null) { instance = new HerosqliteManager(); } } } return instance; } private HerosqliteManager() { dbHelper = new HerosqliteHelper(Heroapplication.getContext()); db = dbHelper.getWritableDatabase(); } /** * 插入记录 * @param hero */ public void insertData(Hero hero) { ContentValues cv = new ContentValues(); cv.put(NAME_FIELD,hero.Name); cv.put(ICOID_FIELD,hero.icoId); cv.put(ATTACK_FIELD,hero.attack); cv.put(DEFENSE_FIELD,hero.defensE); db.insert(TABLE_NAME,cv); } /** * 删除记录 * @param */ public void deleteData(int id) { String whereClasuse = "_id = ?"; String[] whereArgs = new String[]{String.valueOf(id)}; db.delete(TABLE_NAME,whereArgs); } /** * 修改记录 * @param hero */ public void updateData(Hero hero) { ContentValues cv = new ContentValues(); cv.put(NAME_FIELD,hero.defensE); String whereClasuse = "_id = ?"; String[] whereArgs = new String[]{String.valueOf(hero.id)}; db.update(TABLE_NAME,whereArgs); } /** * 查询所有的英雄 * @return */ public List<Hero> SELEctData() { List<Hero> heroList = new ArrayList<>(); cursor c = db.rawQuery("SELEct * from " + TABLE_NAME,null); while (c.moveToNext()) { Hero hero = new Hero(); hero.id = c.geTint(c.getcolumnIndex("_id")); hero.name = c.getString(c.getcolumnIndex(NAME_FIELD)); hero.icoId = c.geTint(c.getcolumnIndex(ICOID_FIELD)); hero.attack = c.geTint(c.getcolumnIndex(ATTACK_FIELD)); hero.defense = c.geTint(c.getcolumnIndex(DEFENSE_FIELD)); heroList.add(hero); } c.close(); return heroList; } /** * 按name查询 * @param name * @return */ public Hero SELEctForName(String Name) { cursor c = db.rawQuery("SELEct * from " + TABLE_NAME + " where name = ?",new String[]{name}); Hero hero = null; if (c.moveToNext()) { hero = new Hero(); hero.id = c.geTint(c.getcolumnIndex("_id")); hero.name = c.getString(c.getcolumnIndex(NAME_FIELD)); hero.icoId = c.geTint(c.getcolumnIndex(ICOID_FIELD)); hero.attack = c.geTint(c.getcolumnIndex(ATTACK_FIELD)); hero.defense = c.geTint(c.getcolumnIndex(DEFENSE_FIELD)); } c.close(); return hero; } public void destroy() { // if (db != null) { // db.close(); // } // db = null; } }
以上是大佬教程为你收集整理的Android使用SQLite数据库的示例全部内容,希望文章能够帮你解决Android使用SQLite数据库的示例所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。