sql数据增删改查的封装

来源:互联网 发布:java定义string并遍历 编辑:程序博客网 时间:2024/05/17 02:43
数据库实现
Cursor是用来保存数据库数据的内容的。
###########
获得SQLiteDatebase的对象的方法
###########
方法一:从外部导入数据库
1.用工具创建数据库,创建表,数据库文件以“.db”或者“.sqlite”结尾
2.把创建好的数据库文件,放在工程目录“res”,下的“raw”
3.把raw下的数据库拷贝到内部储存的files目录下
4.打开数据库,获得SQLiteDatebase的对象
###########
方法二:
1.先写一个自己的openHelper的子类
2.把自己写的子类,构造出来
3.通过构造出来的对象,获得SQLiteDatebase的对象
############
用代码实现数据的增删改查及创建表
################################################
增删改查自定义方法
package com.test.my.myitemtwo.utils;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import java.io.File;
/**
 * Created by Administrator on 2016/5/12.
 */
public class OrderTable {
    private static final String TABLE = "dishfood";
    private Context context;
    private SQLiteDatabase db = null;
    private static final String DB_IMAGE = "image";
    private static final String DB_PRICE = "foodprice";
    public OrderTable(Context context){
        this.context = context;
    }
    //打开数据库
    public boolean openSQL(){
        //或得数据库文件的file对象
        File file = new File(context.getFilesDir(),Comment.DB_DISH_SQLITE);
        //再打开数据库,如过file对应的数据库不存在,则创建一个
        //如果存在则打开
        db = SQLiteDatabase.openOrCreateDatabase(file,null);
        if (db == null){
            return false;
        }else {
            return true;
        }
    }
    //增
    public boolean insert(Integer seatNum,String customer_number){
        if (db == null){
            return false;
        }else {
            db.execSQL("INSERT INTO "+
                    TABLE+
                    "( " +Comment.DB_COLPLACE_TABLE_NAME+
                    ""+Comment.DB_COLPLACE_TABLE_PRICE+
                    ") " +
                    "VALUES " +
                    "(?,?)",
                    new String[]{seatNum.toString(),customer_number});
            return true;
        }
    }
    //删
    public boolean deleteItem(Integer id){
        if (db == null){
           return false;
        }else {
            db.execSQL(" DELETE FROM " +TABLE+ " WHERE "+DB_IMAGE+" = ? ",new String[]{
                    id.toString()
            });
            return true;
        }
    }
    //改
    public boolean updataDB(Integer price,Integer id){
        if (db ==null){
            return false;
        }else {
            db.execSQL(" UPDATE "+TABLE+" SET "+ DB_PRICE+" = ? , WHERE "+
            DB_IMAGE +" = ? ",new String[]{
                    price.toString(),
                    id.toString()
            });
        }
        return true;
    }
    //查
    public Cursor selectAllFromTable(){
        if (db == null){
            return null;
        }
        else{
            Cursor cursor = db.rawQuery(" SELECT * FROM "+TABLE,null);
 //           if (cursor != null){
 //               if (cursor.moveToFirst()){
 //                   for (int i=0;i<cursor.getCount();i++){
 //                       cursor.moveToNext();
 //                   }
 //               }
                cursor.close();
            }
            return cursor;
        }

    }
   public ArrayList<Item> getArraylist(){
   ArrayList<Item> arrayList = new ArrayList<>();
   Cursor cursor = selectAllFromTable();
   if(cursor != null){
       if(cursor.moveToFrist){
                for(int i=0;i<cursor.getCount;i++){
                Item item = new Item();
                item.set............;
                item.set............;
                arrayList.add();
              }   
            }cursor.close;
          }
        }
//    public boolean select(){
//        if (db == null){
//            return false;
//        }else {
//            Cursor cursor = db.rawQuery(" SELECT FROM "+TABLE,null);
//            if ()
//        }
//    }
    //关闭
    public void closeSQL(){
        if (null != db ){
            db.close();
        }
    }
}
0 0