zoukankan      html  css  js  c++  java
  • antroid数据库操作

    1、创建数据库和升级数据库

     package org.jgw.service;


    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
    import android.database.sqlite.SQLiteOpenHelper;

    public class DBOpenHelper extends SQLiteOpenHelper {

        public DBOpenHelper(Context context) 
        {
            super(context, "mxh.db", null, 2); 
        }

        @Override
        public void onCreate(SQLiteDatabase db) {
            db.execSQL("create table test(id integer primary key autoincrement,name varchar(20))");
        }

        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
            // TODO Auto-generated method stub
            db.execSQL("alter table test add memo varchar(50)");
        }

    }

    2、数据库的添加、删除、修改、查询

     package org.jgw.service;


    import java.util.ArrayList;
    import java.util.List;

    import org.jgw.entity.testTable;

    import android.content.Context;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;

    public class testTableService 
    {
        
        DBOpenHelper dbop;
        SQLiteDatabase db;
        
        public testTableService(Context context) {
            dbop=new DBOpenHelper(context);        
        }

        public void add(testTable t)
        {
            db=dbop.getWritableDatabase();
            db.execSQL("insert into test(name,memo) values(?,?)",new Object[]{t.getName(),t.getMemo()});        
        }
        
        public void delete(Integer id)
        {
            db=dbop.getWritableDatabase();
            db.execSQL("delete from test where id=?",new Object[]{id});            
        }
        
        public void update(testTable t)
        {
            db=dbop.getWritableDatabase();
            db.execSQL("update test set name=?,memo=? where id=?",new Object[]{t.getName(),t.getMemo(),t.getId()});
        }
        
        public testTable find(Integer id)
        {
            testTable test;
            db=dbop.getWritableDatabase();
            Cursor cursor=db.rawQuery("select * from test where id=?",new String[]{id.toString()});
            if(cursor.moveToFirst())
            {
                test=new testTable(cursor.getInt(cursor.getColumnIndex("id")), cursor.getString(cursor.getColumnIndex("name")), cursor.getString(cursor.getColumnIndex("memo")));
                cursor.close();
                return test;
            }        
            cursor.close();
            return null;
        }
        
        public List<testTable> findSplitPage(int offset,int pagesize,String where)
        {
            testTable test;
            List<testTable> list=new ArrayList<testTable>();
            db=dbop.getWritableDatabase();
            Cursor cursor=db.rawQuery("select * from test "+where+" order by id limit ?,?",new String[]{offset+"",pagesize+""});
            while(cursor.moveToNext())
            {
                String name=cursor.getString(cursor.getColumnIndex("name"));
                String memo=cursor.getString(cursor.getColumnIndex("memo"));
                test= new testTable(name, memo);
                list.add(test);
            }
            cursor.close();
            return list;
        }
        
        public int getSumCount()
        {        
            db=dbop.getWritableDatabase();
            Cursor cursor=db.rawQuery("select count(*) from test",null);
            cursor.moveToFirst();
            return cursor.getInt(0);
        }
        
        /*
         * 事务的使用
         
    */
        public void Transaction()
        {
            db=dbop.getWritableDatabase();
            db.beginTransaction();
            try
            {
                db.execSQL("update test set name=? where id=?",new Object[]{"sdfsdf","1"});
                db.execSQL("update test set name=?  where id=?",new Object[]{"aaaa","2"});
                db.setTransactionSuccessful();
            }
            finally
            {
                db.endTransaction();
            }
        }
        
    }

    3、数据库实务操作 

      /*

         * 事务的使用
         
    */
        public void Transaction()
        {
            db=dbop.getWritableDatabase();
            db.beginTransaction();
            try
            {
                db.execSQL("update test set name=? where id=?",new Object[]{"sdfsdf","1"});
                db.execSQL("update test set name=?  where id=?",new Object[]{"aaaa","2"});
                db.setTransactionSuccessful();
            }
            finally
            {
                db.endTransaction();
            }
        }


  • 相关阅读:
    hdu 4825 Xor Sum (01 Trie)
    hdu 5877 Weak Pair (Treap)
    bzoj 1861: [Zjoi2006]Book 书架 (splay)
    bzoj 1503: [NOI2004]郁闷的出纳员 (splay)
    hihocoder#1333 : 平衡树·Splay2 (区间操作)
    「BZOJ1251」序列终结者 (splay 区间操作)
    二进制运算符的相关运算
    Bzoj 1085: [SCOI2005]骑士精神 (dfs)
    Bzoj 1083: [SCOI2005]繁忙的都市 (最小生成树)
    Bzoj 1088: [SCOI2005]扫雷Mine (DP)
  • 原文地址:https://www.cnblogs.com/kuailewangzi1212/p/2614187.html
Copyright © 2011-2022 走看看