Android SQLite数据库操作代码类分享
2015-03-20 11:21
573 查看
使用示例:
package cn.hackcoder.beautyreader.db; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; /** * Created by hackcoder on 15-1-25. */ public class DataBaseHelper extends SQLiteOpenHelper { private static final String dbName = "sample.db"; private static int dbVersion = 1; public DataBaseHelper(Context context) { super(context,dbName,null,dbVersion); } @Override public void onCreate(SQLiteDatabase db) { Log.d("===========","数据库初始化"); //建表 String sql = "create table if not exists tb_article(id integer primary key autoincrement,title varchar(50),content TEXT,url varchar(50),page integer)"; db.execSQL(sql); } /** * * @param db * @param oldVersion * @param newVersion */ @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { } }
类源码:
package cn.hackcoder.beautyreader.service; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import java.util.ArrayList; import java.util.List; import cn.hackcoder.beautyreader.db.DataBaseHelper; import cn.hackcoder.beautyreader.model.Article; /** * Created by hackcoder on 15-1-25. */ public class ArticleService { private DataBaseHelper dataBaseHelper; private SQLiteDatabase readableDatabase; private SQLiteDatabase writableDatabase; public ArticleService(Context context) { dataBaseHelper = new DataBaseHelper(context); } public void add(Article article) { String sql = "insert into tb_article(id,title,content,url,page) values(?,?,?,?,?)"; getReadableDatabase().execSQL(sql, new Object[]{null, article.getTitle(), article.getContent(), article.getUrl(), article.getPage()}); } public void delete(int id) { String sql = "delete from tb_article where id =?"; getReadableDatabase().execSQL(sql, new Object[]{id}); } public void deleteAll() { String sql = "delete from tb_article"; getReadableDatabase().execSQL(sql,null); } public void update(Article article) { String sql = "update tb_article set title=?,content=?,url=?,page = ? where id =?"; getReadableDatabase().execSQL(sql, new Object[]{article.getTitle(), article.getContent(), article.getUrl(), article.getPage(), article.getId()}); } public void updateContentOfUrl(String url,String content){ String sql = "update tb_article set content=? where url =?"; getReadableDatabase().execSQL(sql, new Object[]{content,url}); } public Article find(int id) { Article article = new Article(); String sql = "select id,title,content,url,page from tb_article where id = ?"; Cursor cursor = getReadableDatabase().rawQuery(sql, new String[]{String.valueOf(id)}); if (cursor.moveToNext()) { article.setId(id); article.setTitle(cursor.getString(cursor.getColumnIndex("title"))); article.setContent(cursor.getString(cursor.getColumnIndex("content"))); article.setUrl(cursor.getString(cursor.getColumnIndex("url"))); article.setPage(cursor.getInt(cursor.getColumnIndex("page"))); cursor.close(); return article; } cursor.close(); return null; } public List<Article> findByUrl(String url) { List<Article> articles = new ArrayList<Article>(); String sql = "select id,title,content,url,page from tb_article where url = ?"; Cursor cursor = getReadableDatabase().rawQuery(sql, new String[]{url}); while (cursor.moveToNext()) { Article article = new Article(); article.setId(cursor.getInt(cursor.getColumnIndex("id"))); article.setTitle(cursor.getString(cursor.getColumnIndex("title"))); article.setContent(cursor.getString(cursor.getColumnIndex("content"))); article.setUrl(cursor.getString(cursor.getColumnIndex("url"))); article.setPage(cursor.getInt(cursor.getColumnIndex("page"))); articles.add(article); } cursor.close(); return articles; } public int getCountOfPage(int page){ String sql = "select count(*) from tb_article where page = ?"; Cursor cursor = getReadableDatabase().rawQuery(sql, new String[]{String.valueOf(page)}); cursor.moveToFirst(); int count = cursor.getInt(0); cursor.close(); return count; } public List<Article> getArticlesOfPage(int curPage){ List<Article> articles = new ArrayList<Article>(); String sql = "select id,title,content,url,page from tb_article where page = ?"; Cursor cursor = getReadableDatabase().rawQuery(sql,new String[]{String.valueOf(curPage)}); while(cursor.moveToNext()){ Article article = new Article(); article.setId(cursor.getInt(cursor.getColumnIndex("id"))); article.setTitle(cursor.getString(cursor.getColumnIndex("title"))); article.setContent(cursor.getString(cursor.getColumnIndex("content"))); article.setUrl(cursor.getString(cursor.getColumnIndex("url"))); article.setPage(cursor.getInt(cursor.getColumnIndex("page"))); articles.add(article); } cursor.close(); return articles; } public int countOfSum() { String sql = "select count(*) from tb_article"; Cursor cursor = getReadableDatabase().rawQuery(sql, null); cursor.moveToFirst(); int count = cursor.getInt(0); cursor.close(); return count; } public List<Article> getArticles(int start, int pageSize) { List<Article> articles = new ArrayList<Article>(); String sql = "select id,title,content,url,page from tb_article limit ?,?"; Cursor cursor = getReadableDatabase().rawQuery(sql,new String[]{String.valueOf(start),String.valueOf(pageSize)}); while(cursor.moveToNext()){ Article article = new Article(); article.setId(cursor.getInt(cursor.getColumnIndex("id"))); article.setTitle(cursor.getString(cursor.getColumnIndex("title"))); article.setContent(cursor.getString(cursor.getColumnIndex("content"))); article.setUrl(cursor.getString(cursor.getColumnIndex("url"))); article.setPage(cursor.getInt(cursor.getColumnIndex("page"))); articles.add(article); } cursor.close(); return articles; } public void closeDB() { if (readableDatabase != null && readableDatabase.isOpen()) { readableDatabase.close(); } if (writableDatabase != null && writableDatabase.isOpen()) { writableDatabase.close(); } } public SQLiteDatabase getReadableDatabase() { return dataBaseHelper.getReadableDatabase(); } public SQLiteDatabase getWritableDatabase() { return dataBaseHelper.getWritableDatabase(); } }
您可能感兴趣的文章:
- Android SQLite数据库增删改查操作的使用详解
- Android SQLite数据库增删改查操作的案例分析
- Android使用SQLite数据库的简单实例
- android创建数据库(SQLite)保存图片示例
- android通过jxl读excel存入sqlite3数据库
- Android中的SQL查询语句LIKE绑定参数问题解决办法(sqlite数据库)
- Android中操作SQLite数据库快速入门教程
- Android操作存放在assets文件夹下SQLite数据库的方法
- Android操作SQLite数据库(增、删、改、查、分页等)及ListView显示数据的方法详解
- Android创建和使用数据库SQLIte
相关文章推荐
- android SQLite使用SQLiteOpenHelper类对数据库进行操作
- 【转载】Using SQLite from Shell in Android(在shell 下使用sqlite命令操作数据库)
- Android学习之旅--sqlite3 数据库命令操作
- Android sqlite数据库操作通用框架AHibernate(三)-升级为1.1版本
- android数据库操作 sqlite returned: error code = 14, msg = cannot open file at source line 25502
- Android下SQLite3数据库操作笔记(二)之-SQLiteOpenHelper
- Android sqlite数据库操作通用框架AHibernate(二)源码-用于交流
- android数据库操作出现的 android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed
- android sqlite数据库简单操作(adb shell)
- 关于android系统自带数据库SQLite操作的重要易犯错误
- android sqlite数据库操作
- Android sqlite数据库操作通用框架AHibernate(一)-CRUD示例和使用步骤
- Android SQLite数据库操作“绑定或列的索引超出范围”
- Android开发—数据库应用—访问数据表(SQLite OpenHelper) —添加检索操作(Retrieve)
- Android下SQLite3数据库操作笔记
- android SQLite数据库基本操作示例
- android SQLite数据库基本操作示例
- android SQLite数据库基本操作示例
- android数据库SQLite操作实例
- android SQLiteOpenHelper操作数据库 搜索关键字列表应用