zoukankan      html  css  js  c++  java
  • SQLite在Android中使用

    程序内使用SQLite数据库是通过SQLiteOpenHelper进行操作

    1.       自己写个类继承SQLiteOpenHelper,重写以下3个方法

    public void onCreate(SQLiteDatabase db)

    {//创建数据库时的操作,如建表}

     

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)

           {

               //版本更新的操作

           }

    2.    通过SQLiteOpenHelper的getWritableDatabase()获得一个SQLiteDatabase数据库,以后的操作都是对SQLiteDatabase进行操作。

    3.       对得到的SQLiteDatabase对象进行增,改,删,查等操作。

    代码

    package cx.myNote;

     

    import android.content.ContentValues;

    import android.content.Context;

    import android.content.Intent;

    import android.database.Cursor;

    import android.database.sqlite.SQLiteDatabase;

    import android.database.sqlite.SQLiteOpenHelper;

     

    //DBOptions for login

    public class DBOptions {

           private static final String DB_NAME = "notes.db";

           private static final String DB_CREATE="create table logininf(name text,pwd text)";

           public class DBHelper extends SQLiteOpenHelper

           {

     

                  public DBHelper(Context context) {

                         super(context,DB_NAME, null, 1);

                         }

     

                  @Override

                  public void onCreate(SQLiteDatabase db) {

                         // TODO Auto-generated method stub

                         //建表

                     db.execSQL(DB_CREATE);

                  }

                 

                  @Override

                  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

                         // TODO Auto-generated method stub

                         db.execSQL("drop table if exists logininf");

                         onCreate(db);

                  }

                 

           }

           private Context context;

           private SQLiteDatabase db;

           private DBHelper dbHelper;

           public  DBOptions(Context context)

           {

                  this.context = context;

                  dbHelper = new DBHelper(context);

                  db=dbHelper.getReadableDatabase();

                 

           }

      //自己写的方法,对数据库进行操作

           public String getName()

           {

                 

                  Cursor cursor = db.rawQuery("select name from logininf", null);

                  cursor.moveToFirst();

                  return cursor.getString(0);    

           }

           public int changePWD(String oldP,String pwd)

           {

                  ContentValues values = new ContentValues();

                  values.put("pwd", pwd);

                  return db.update("logininf", values,"pwd="+oldP, null);

           }

    }

  • 相关阅读:
    手写一个call、apply、bind
    setTimeout
    meta标签及Keywords
    用VSCode插件来一键填满Github的绿色格子吧-AutoCommit
    前端工具-定制ESLint 插件以及了解ESLint的运行原理
    JS基础-全方面掌握继承
    JS基础-该如何理解原型、原型链?
    前端中等算法-无重复字符的最长子串
    前端面试 js 你有多了解call,apply,bind?
    博客图片失效?使用npm工具一次下载/替换所有失效的外链图片
  • 原文地址:https://www.cnblogs.com/laojie4321/p/2479233.html
Copyright © 2011-2022 走看看