SQlite-数据库的访问实例(转)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了SQlite-数据库的访问实例(转),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含4039字,纯文字阅读大概需要6分钟。
内容图文
1、DBAdapter类: 1 package com.cnzcom.android.quickdial; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; /** * * @author zhangjie * * 数据库相关操作的类 */publicclass DBAdapter { /** * 数据库名 */privatestaticfinal String DATABASE_NAME = "quickdial.db"; /** * 数据表名 */privatestaticfinal String DATABASE_TABLE = "quickdial"; /** * 数据库版本 */privatestaticfinalint DATABASE_VERSION = 1; /** * key_id :主键 */ @SuppressWarnings("unused") privatestaticfinal String KEY_ID = "key_id"; /** * position :位置信息,表示数据是第几项 */privatestaticfinal String POSITION = "position"; /** * name :姓名 */privatestaticfinal String NAME = "name"; /** * phone_number :电话号码 */privatestaticfinal String PHONE_NUMBER = "phone_number"; /** * ip :是否ip播出 */privatestaticfinal String IP = "ip"; /** * */privatestaticfinal String DATABASE_CREATE = "create table quickdial (key_id INTEGER PRIMARY KEY, " + "position INTEGER, " + "name TEXT, " + "phone_number TEXT, " + "ip INTEGER" + ");"; /** * */privatefinal Context context; /** * */private DatabaseHelper DBHelper; /** * */private SQLiteDatabase db; public DBAdapter(Context ctx) { context = ctx; DBHelper = new DatabaseHelper(context); } privatestaticclass DatabaseHelper extends SQLiteOpenHelper { public DatabaseHelper(Context context) { super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override publicvoid onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub db.execSQL(DATABASE_CREATE); } @Override publicvoid onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE); onCreate(db); } } /** * 打开数据库 * @return * @throws SQLException */public SQLiteDatabase open() throws SQLException { db = DBHelper.getWritableDatabase(); Cursor cursor = getAll(); if(cursor.getCount() == 0) { Log.e("数据库为空", "插入数据"); /** * 先使用假数据初始化数据库 */for(int i = 0; i < 10; i++) { insert(i, "", "", 0); } } else { Log.e("数据库不为空", "读取数据"); } cursor.close(); return db; } /** * 关闭数据库 */publicvoid close() { DBHelper.close(); } /** * 向数据库中插入数据 */publiclong insert(int position, String name, String phone_number, int ip) { ContentValues initialValues = new ContentValues(); initialValues.put(POSITION, position); initialValues.put(NAME, name); initialValues.put(PHONE_NUMBER, phone_number); initialValues.put(IP, ip); return db.insert(DATABASE_TABLE, null, initialValues); } /** * 删除数据,其实不是真正意义上的删除,而是将name = ""、phone_number = ""、ip = 0 */publicboolean delete(int position) { ContentValues initialValues = new ContentValues(); initialValues.put(POSITION, position); initialValues.put(NAME, ""); initialValues.put(PHONE_NUMBER, ""); initialValues.put(IP, 0); return db.update(DATABASE_TABLE, initialValues, POSITION + "=" + position, null) > 0; // return db.delete(DATABASE_TABLE, POSITION + "=" + position, null) > 0; } /** * 更改数据 */publicboolean update(int position, String name, String phone_number, int ip) { ContentValues initialValues = new ContentValues(); //initialValues.put(POSITION, position); initialValues.put(NAME, name); initialValues.put(PHONE_NUMBER, phone_number); initialValues.put(IP, ip); return db.update(DATABASE_TABLE, initialValues, POSITION + "=" + position, null) > 0; } public Cursor getAll() { Cursor cur = db.query(DATABASE_TABLE, null, null, null, null, null, null); return cur; } public Cursor get(long rowId) throws SQLException { Cursor cur = db.query(true, DATABASE_TABLE, new String[] {POSITION, NAME, PHONE_NUMBER, IP}, POSITION + "=" + rowId, null, null, null, null, null); if(cur != null) { cur.moveToFirst(); } return cur; } } 2、Activity中调用:1 public DBAdapter m_DBAdapter; m_DBAdapter = new DBAdapter(this); m_DBAdapter.open();
文章出处
http://www.cnblogs.com/Jackeyzhang/archive/2011/06/02/2068459.html
原文:http://www.cnblogs.com/zhangshuli-1989/p/zhangshuli_SQlite_150302183.html
内容总结
以上是互联网集市为您收集整理的SQlite-数据库的访问实例(转)全部内容,希望文章能够帮你解决SQlite-数据库的访问实例(转)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。