• 随手记(二)


    MySQLiteHelper.java
    public class MySQLiteHelper extends SQLiteOpenHelper {

        //抽象类必须调用父类方法
        public MySQLiteHelper(Context context, String name, CursorFactory factory, int version) {
                //调用父类构造函数
                super(context, getMyDatabaseName(name), factory, version);
        }
    
        private static String getMyDatabaseName(String name){
                String databasename = name;
                boolean isSdcardEnable = false;
                String state = Environment.getExternalStorageState();
                if(Environment.MEDIA_MOUNTED.equals(state)){//SDCard是否插入
                        isSdcardEnable = true;
                }
                String dbPath = null;
                if(isSdcardEnable){
                        dbPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Finance/database/";
                }else{//未插入SDCard,建在内存中
    
                }
                File dbp = new File(dbPath);
                if(!dbp.exists()){
                        dbp.mkdirs();
                }
                databasename = dbPath + databasename;
                return databasename;
        }
        /**
         * 当数据库首次创建时执行该方法,一般将创建表等初始化操作放在该方法中执行.
         * 重写onCreate方法,调用execSQL方法创建表
         */
        @Override
        public void onCreate(SQLiteDatabase db) {
                Log.i("SWORD", "create a Database");
                //创建数据库sql语句
                String sql = "create table finance(ID integer PRIMARY KEY AUTOINCREMENT,Type varchar(10),Time varchar(20),Fee double,Remarks varchar(20),Budget varchar(10))";
                //执行创建数据库操作
                db.execSQL(sql);
    
                //创建表
                 sql = "create table plan(ID integer PRIMARY KEY AUTOINCREMENT,Morningplan varchar(100),Afternoonplan varchar(100),Nightplan varchar(100),Rank varchar(5), Conclusion varchar(100))";
                //执行创建数据库操作
                db.execSQL(sql);
        }
    
        @Override
        //当打开数据库时传入的版本号与当前的版本号不同时会调用该方法
        public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
    
        }
    

    }

  • 相关阅读:
    面向对象———类
    二维数组简单使用
    数组——算法
    第6章 约束满足问题CSP
    第5章 对抗搜索
    第4章 超越经典的搜索
    140303 命令行选项 ccf
    150904 高速公路 ccf
    170304 地铁修建 ccf
    vector容器
  • 原文地址:https://www.cnblogs.com/liqinsqzr/p/7007166.html
Copyright © 2020-2023  润新知