zoukankan      html  css  js  c++  java
  • 2021年2月18日 记账本开发01

    今天完成了数据库的建立,

    CashDB:

    package bjfu.it.sun.cashbook;
    
    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    
    import androidx.annotation.Nullable;
    
    public class CashDB extends SQLiteOpenHelper {
        public static final String TABLE_NAME="cash";//表名
        public static final String CONTENT="context";//花费的内容,表的列
        public static final String COAST="coast";//花费的钱
        public static final String ID="_id";//id
        public static final String TIME="time";//时间
    
    
        //构造方法
        public CashDB(@Nullable Context context) {
            //第一个参数context,第二个是库名,第三个factory传一个空,第四个版本号第一次创建所以是1
            super(context, "cash", null, 1);
        }
    
        //创建数据库
        @Override
        public void onCreate(SQLiteDatabase db) {
            db.execSQL("create table "+TABLE_NAME+"("
                    +ID+" INTEGER PRIMARY KEY AUTOINCREMENT,"
                    +CONTENT+" TEXT NOT NULL,"
                    +COAST+" TEXT NOT NULL,"
                    +TIME +" TEXT NOT NULL)"
            );
        }
    
        //更新
        @Override
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    
        }
    }

    在MainActivity里面测试:

    package bjfu.it.sun.cashbook;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.content.ContentValues;
    import android.database.sqlite.SQLiteDatabase;
    import android.os.Bundle;
    
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    public class MainActivity extends AppCompatActivity {
    
        private CashDB cashDB ;//创建数据库对象
        private SQLiteDatabase dbWriter;//创造可添加的选项
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //实例化
            cashDB=new CashDB(this);
            //获取到当前可添加的权限
            dbWriter=cashDB.getWritableDatabase();//写入权限
            addDB();
        }
    
    
        //创建方法用于添加具体内容
        public void addDB(){
            ContentValues cv=new ContentValues() ;
            cv.put(CashDB.CONTENT ,"Hello");
            cv.put(CashDB.COAST  ,"33");
            cv.put(CashDB.TIME  ,getTime());
        //写入数据库
            dbWriter.insert(CashDB.TABLE_NAME ,null,cv) ;
    
        }
    
        //获取当前设备的时间
        public String getTime(){
            SimpleDateFormat format =new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss") ;
            Date curData=new Date();//实例化
            String str =format .format(curData);//获取时间
            return str;
    
        }
    
    }

    最后数据库:

  • 相关阅读:
    Android 内存溢出解决方案(OOM) 整理总结
    mysql数据库基本操作
    java基础集合框架——List、Set、Map概述(java集合一)
    Android基础常用日期操作工具类
    Android 中的adapter和作用以及常见的adapter
    Android中的SimpleAdapter
    android中selector使用
    Android 中消息处理机制-Looper、Handler、Thread(一)
    Android 中消息处理机制-Looper、Handler、Thread (二)
    android中MessageQueue , Message , Looper , Handler(三)
  • 原文地址:https://www.cnblogs.com/j-y-s/p/14457699.html
Copyright © 2011-2022 走看看