首页 Android 一个sqlite的简单增删改查

一个sqlite的简单增删改查

sqlite 数据库的创建 package com.yq1012.mobilesafe.db; import andro…

sqlite 数据库的创建

package com.yq1012.mobilesafe.db;

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteDatabase.CursorFactory;

import android.database.sqlite.SQLiteOpenHelper;

public class BlackNumDBOpenHelper extends SQLiteOpenHelper {

    public BlackNumDBOpenHelper(Context context) {

        super(context, "blacknumber.db", null, 1);

        //数据库创建的 构造方法。



    }

    @Override

    public void onCreate(SQLiteDatabase db) {

          db.execSQL("CREATE TABLE  blacknumber(_id integer primary key autoincrement, number varchar(20),mode  varchar(2))");

    }

    @Override

    public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {



    }

}

sqlite数据库的增删改查

 

package com.yq1012.mobilesafe.db.dao;

import java.util.ArrayList;

import java.util.List;

import com.yq1012.mobilesafe.db.BlackNumDBOpenHelper;

import com.yq1012.mobilesafe.domain.BlackNumberInfo;

import android.content.ContentValues;

import android.content.Context;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

/**

 * 黑名单数据库的增删改查业务类

 *

 * @author Administrator

 *

 */

public class BlackNumberDao {

    private BlackNumDBOpenHelper helper;

    /**

     * 构造方法

     *

     * @param context

     *            上下文

     */

    public BlackNumberDao(Context context) {

        helper = new BlackNumDBOpenHelper(context);

    }

    /**

     * 查询黑名单号码是是否存在

     *

     * @param number

     * @return

     */

    public boolean find(String number) {

        boolean result = false;

        SQLiteDatabase db = helper.getReadableDatabase();

        Cursor cursor = db.rawQuery("select * from blacknumber where number=?",

                new String[] { number });

        if (cursor.moveToNext()) {

            result = true;

        }

        cursor.close();

        db.close();

        return result;

    }

    /**

     * 查询黑名单号码的拦截模式

     *

     * @param number

     * @return 返回号码的拦截模式,不是黑名单号码返回null

     */

    public String findMode(String number) {

        String result = null;

        SQLiteDatabase db = helper.getReadableDatabase();

        Cursor cursor = db.rawQuery(

                "select mode from blacknumber where number=?",

                new String[] { number });

        if (cursor.moveToNext()) {

            result = cursor.getString(0);

        }

        cursor.close();

        db.close();

        return result;

    }

    /**

     * 查询全部黑名单号码

     *

     * @return

     */

    public List<BlackNumberInfo> findAll() {

        try {

            Thread.sleep(5000);

        } catch (Exception e) {

            e.printStackTrace();

        }

        List<BlackNumberInfo> result = new ArrayList<BlackNumberInfo>();

        SQLiteDatabase db = helper.getReadableDatabase();

        Cursor cursor = db.rawQuery(

                "select number,mode from blacknumber order by _id desc", null);

        while (cursor.moveToNext()) {

            BlackNumberInfo info = new BlackNumberInfo();

            String number = cursor.getString(0);

            String mode = cursor.getString(1);

            info.setMode(mode);

            info.setNumber(number);

            result.add(info);

        }

        cursor.close();

        db.close();

        return result;

    }



    public List<BlackNumberInfo> findPart(int offset,int size) {

        try {

            Thread.sleep(500);

        } catch (Exception e) {

            e.printStackTrace();

        }

        List<BlackNumberInfo> result = new ArrayList<BlackNumberInfo>();

        SQLiteDatabase db = helper.getReadableDatabase();

        Cursor cursor = db.rawQuery(

                "select number,mode from blacknumber  order by _id desc limit ? offset ? ", new String[]{String.valueOf(size),String.valueOf(offset)});

        while (cursor.moveToNext()) {

            BlackNumberInfo info = new BlackNumberInfo();

            String number = cursor.getString(0);

            String mode = cursor.getString(1);

            info.setMode(mode);

            info.setNumber(number);

            result.add(info);

        }

        cursor.close();

        db.close();

        return result;

    }





    /**

     * 添加黑名单号码

     *

     * @param number

     *            黑名单号码

     * @param mode

     *            拦截模式 1.电话拦截 2.短信拦截 3.全部拦截

     */

    public void add(String number, String mode) {

        SQLiteDatabase db = helper.getWritableDatabase();

        ContentValues values = new ContentValues();

        values.put("number", number);

        values.put("mode", mode);

        db.insert("blacknumber", null, values);

        db.close();

    }

    /**

     * 修改黑名单号码的拦截模式

     *

     * @param number

     *            要修改的黑名单号码

     * @param newmode

     *            新的拦截模式

     */

    public void update(String number, String newmode) {

        SQLiteDatabase db = helper.getWritableDatabase();

        ContentValues values = new ContentValues();

        values.put("mode", newmode);

        db.update("blacknumber", values, "number=?", new String[] { number });

        db.close();

    }

    /**

     * 删除黑名单号码

     *

     * @param number

     *            要删除的黑名单号码

     */

    public void delete(String number) {

        SQLiteDatabase db = helper.getWritableDatabase();

        db.delete("blacknumber", "number=?", new String[] { number });

        db.close();

    }

}

 

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

为您推荐

android studio查看android手机日志

android studio查看android手机日志

本文在尝试了,使用adb,eclipse查看log未果之后,使用android studio来查看unity打包的apk...
Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check t

Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check t

在android高版本开发环境(sdk 4.4)导入低版本(sdk 3.0)的工程时编译报错,报错信息如:Convers...
用Bundle和直接用Intent.putExtra(“xx”,yy)传递有什么不同

用Bundle和直接用Intent.putExtra(“xx”,yy)传递有什么不同

QQ群里一个提出来了 。。长知识了。。 Intent intent = new Intent(); intent.put...
Universal-Image-Loader解析——DisplayImageOptions的详细配置

Universal-Image-Loader解析——DisplayImageOptions的详细配置

在使用这个框架的时候,我们必须要配置一个DisplayImageOptions对象来作为ImageLoader.getI...
安卓测试环境的配置

安卓测试环境的配置

AndroidManifest.xml 配置 <uses-permission android:name="and...
返回顶部