zoukankan      html  css  js  c++  java
  • Android-SQLiteOpenHelper

    Android-SQLiteOpenHelper

    一 概念
    是对SOLiteDatabase的封装。主要用于建立和版本号控制,方便我们去建立库表结构

    二 用法
    又一次封装一个MySqliteOpenHelper类。来实现openOrCreateDatabase类的功能

    `public void openOrCreateDatabase()
        { 
            try
            {
                    MyDatabaseOpenHelper _myDatabaseOpenHelper = new MyDatabaseOpenHelper(mContext, DATABASE_NAME, null, 2);
                mSqLiteDatabase = _myDatabaseOpenHelper.getWritableDatabase();
            } catch (Exception e)
            {
                // TODO: handle exception
                Log.i("chengzhi log", "table exit");
            }
    
        }

    MySqliteOpenHelper类继承SQLiteOpenHelper重写的方法:
    onCreate创建表结构

    @Override
        public void onCreate(SQLiteDatabase arg0)
        {
            // TODO Auto-generated method stub
            arg0.execSQL("create TABLE "+TABLE_NAME+"(_id INTEGER PRIMARY KEY AUTOINCREMENT,"+COLUMN_USER_NAME+" VARCHAR(50) NOT NULL, "+COLUMN_USER_ADDRESS+" VARCHAR(50) NOT NULL)");
        }

    onUpgrade方法用于创建表和控制表的版本号

    @Override
        public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2)
        {
            // TODO Auto-generated method stub
            //arg2为新版本号  arg1位旧版本号 
            if (2 == arg2)
            {
                arg0.execSQL("create TABLE Custom (_id INTEGER PRIMARY KEY AUTOINCREMENT,"+COLUMN_USER_NAME+" VARCHAR(50) NOT NULL, "+COLUMN_USER_ADDRESS+" VARCHAR(50) NOT NULL)");
            }
            else if (2 == arg1 && 1 == arg2)
            {
                arg0.execSQL("drop TABLE_NAME");
            }
    
        }
  • 相关阅读:
    Spring加载xsd引起的问题小记
    kafka配置参数
    nginx常见内部参数,错误总结
    从毕业到现在的总结
    storm坑之---传递对象
    Java多线程读取大文件
    webpack4.0.1安装问题及解决方法
    git入门篇shell
    less教程
    原生js的ajax请求
  • 原文地址:https://www.cnblogs.com/lytwajue/p/7308320.html
Copyright © 2011-2022 走看看