zoukankan      html  css  js  c++  java
  • 用SQL语句操作Sqlite数据库的示例代码

    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    
    /**
     * 创建数据库帮助类 extends SQLiteOpenHelper
     */
    public class MyDbOpenHelper extends SQLiteOpenHelper {
    
    	/**
    	 * 构造方法
    	 * 
    	 * @param context
    	 *            上下文
    	 * @param name
    	 *            数据库名称
    	 * @param factory
    	 *            null
    	 * @param version
    	 *            数据库的版本号 >=1
    	 *            只能升级不能降级
    	 */
    	public MyDbOpenHelper(Context context) {
    		super(context,"Data.db",null,1);
    	}
    
    	/**
    	 * 第一次创建数据库的时候调用
    	 * 适合初始化数据库的表
    	 */
    	@Override
    	public void onCreate(SQLiteDatabase db) {
    		db.execSQL("create table stu(_id integer primary key autoincrement,name varchar(20),num varchar(20))");
    	}
    
    	/**
    	 * 数据库升级时,调用
    	 * 修改数据库的表
    	 */
    	@Override
    	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    		System.out.println("onUpgrade");
    	}
    }

    
    
    import android.app.Activity;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    import android.view.View;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        public void insert(View v) {
            // 1. 在内存中创建数据库帮助类的对象
            MyDbOpenHelper helper = new MyDbOpenHelper(this);
            // 2. 在磁盘上创建数据库文件
            SQLiteDatabase db = helper.getWritableDatabase();
            db.execSQL("insert into stu('name','num') values (?,?)", new Object[] { "AAA", "110" });
            // 释放资源
            db.close();
        }
    
        public void delete(View v) {
            // 1. 在内存中创建数据库帮助类的对象
            MyDbOpenHelper helper = new MyDbOpenHelper(this);
            // 2. 在磁盘上创建数据库文件
            SQLiteDatabase db = helper.getWritableDatabase();
            db.execSQL("delete from stu");
            // 释放资源
            db.close();
        }
    
        public void update(View v) {
            // 1. 在内存中创建数据库帮助类的对象
            MyDbOpenHelper helper = new MyDbOpenHelper(this);
            // 2. 在磁盘上创建数据库文件
            SQLiteDatabase db = helper.getWritableDatabase();
            db.execSQL("update stu set name=?",new String[]{"yadan"});
            // 释放资源
            db.close();
        }
        
        public void query(View v){
            // 1. 在内存中创建数据库帮助类的对象
            MyDbOpenHelper helper = new MyDbOpenHelper(this);
            // 2. 在磁盘上创建数据库文件
            SQLiteDatabase db = helper.getWritableDatabase();
            Cursor cursor = db.rawQuery("select * from stu", null);
            while(cursor.moveToNext()){
                String id = cursor.getString(0);
                String name = cursor.getString(1);
                String num = cursor.getString(2);         
            }
            
            // 释放资源
            db.close();
        }
    }
    
  • 相关阅读:
    BZOJ2241 [SDOI2011]打地鼠 【模拟】
    K-D tree入门
    BZOJ1924 [Sdoi2010]所驼门王的宝藏 【建图 + tarjan】
    BZOJ1925 [Sdoi2010]地精部落 【dp】
    BZOJ1926 [Sdoi2010]粟粟的书架 【主席树 + 二分 + 前缀和】
    BZOJ2457 [BeiJing2011]双端队列 【贪心】
    二进制集合枚举子集
    BZOJ1923 [Sdoi2010]外星千足虫 【高斯消元】
    BZOJ1922 [Sdoi2010]大陆争霸 【最短路】
    HDU3157:Crazy Circuits——题解
  • 原文地址:https://www.cnblogs.com/loaderman/p/6431874.html
Copyright © 2011-2022 走看看