<Android考证之实训项目八> Sqlite数据库增删改查

package com.example.sql;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import java.util.HashMap;
import java.util.Map;

public class MainActivity extends AppCompatActivity {
    private TextView textview;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textview = (TextView)findViewById(R.id.text1);
        UserStorage userStorage = new UserStorage(this);
        ContentValues contentValues = new ContentValues();
        contentValues.put("name","aa");
        contentValues.put("sex","女");
        contentValues.put("age",20);
        long id = userStorage.insert(contentValues);
        Map<String,Object> map = userStorage.query(""+id);
        textview.setText((String)map.get("name")+" "+(String)map.get("sex")+" "+(int)map.get("age"));
    }
}
class UserStorage{
    String dbName = "userDB";
    String table = "users";
    int version = 1;
    DBHelper dbHelper;
    public UserStorage(Context context){
        dbHelper = new DBHelper(context,version);
    }
    long insert(ContentValues contentValues){
        SQLiteDatabase sqLiteDatabase = dbHelper.getWritableDatabase();
        long id = sqLiteDatabase.insert(table, null, contentValues);
        sqLiteDatabase.close();
        return id;
    }
    long delete(String id){
        SQLiteDatabase sqLiteDatabase = dbHelper.getWritableDatabase();
        long result = sqLiteDatabase.delete(table,"_id=?",new String[]{id});
        sqLiteDatabase.close();
        return result;
    }
    long update(ContentValues contentValues, String id){
        SQLiteDatabase sqLiteDatabase = dbHelper.getWritableDatabase();
        long result = sqLiteDatabase.update(table,contentValues,"_id=?",new String[]{id});
        return result;
    }
    Map<String,Object> query(String id){
        SQLiteDatabase sqLiteDatabase = dbHelper.getReadableDatabase();
        Cursor cursor = sqLiteDatabase.query(table,new String[]{"_id","name","sex","age"},"_id=?",new String[]{id},null,null,null);
        if(cursor.moveToNext()){
            Map<String,Object> map = new HashMap<String,Object>();
            map.put("_id",cursor.getInt(0));
            map.put("name",cursor.getString(1));
            map.put("sex",cursor.getString(2));
            map.put("age",cursor.getInt(3));
            cursor.close();
            sqLiteDatabase.close();
            return map;
        }else{
            sqLiteDatabase.close();
            return null;
        }
    }
}
class DBHelper extends SQLiteOpenHelper{

    private String createTableSql = "create table if not exists users" +
            "(_id integer primary key autoincrement," +
            "name text not null," +
            "sex text not null," +
            "age integer not null)";

    public DBHelper(Context context, int version){
        super(context,"userDB",null,version);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(createTableSql);
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        String sql = "drop table if exists users";
        db.execSQL(sql);
        onCreate(db);
    };
}

 

转载于:https://www.cnblogs.com/jdxb/p/10957085.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android实训报告基于Android游戏开发全文共6页,当前为第1页。Android实训报告基于Android游戏开发全文共6页,当前为第1页。Android实训报告基于Android游戏开发 Android实训报告基于Android游戏开发全文共6页,当前为第1页。 Android实训报告基于Android游戏开发全文共6页,当前为第1页。 通信与电子信息专业实训报告项目名称:基于Android的游戏开发班级通信班姓名学号指导教师成绩实训时间:2013年X月17日—2013年X月28日目录一、实训目的及其意义31.1、目的及意义31.2、研究现状3二、实训主要任务、重点及难点42.1、任务42.2、重点内容及实现途径4三、实训具体内容及完成的主要工作53.1、认识基础开发63.2、了解数据存储63.3、总体实训过程7四、实际遇到的困难,解决问题的方法和措施8(一)、所遇问题8(二)、解决方法与措施9五、心得体会9一、实训目的及其意义1.1、目的及意义了解现阶段互联网发展主流,了解移动互联网,认识移动互联网的发展与展望,认识Android,了解基于Android的应用软件开发方法及其商业流程。把理论与实际结合,通过对理论知识的理解,领悟从而运用到生活实际巩固所学的知识,提高对实际生活的认识,积累经验。使学生在此期间能够初次体会到实际生产的种种技能与经验,完成一项项目锻炼独立思考及团队合作能力。使学生们进一步加深对所学知识的理解,理论联系实际,巩固所学有关计算机基础理论知识和基本技能,学习有关计算机最新技术方面的应用,增强学生对计算机在社会生活,社会生产应用的感性认识,深入了解计算机在各个领域的应用状况。生产实习是学校教学的重要补充部分,是区别于普通学校教育的一个显著特征,是教育教学体系的一个不可缺少的重要组成部分和不可替代的重要环节。它是与今后的职业生活最直接联系的,学生在生产实习过程将完成学习到就业的过渡,因此生产实习是培养技能型人才,实现培养目标的主要途径。它不仅是校内教学的延续,而且是校内教学的总结。生产实习一方面巩固了书本上学到的理论知识,另一方面,可获得在书本上不易了解和不易学到的生产现场的实际知识,使我们在实践得到提高实训环节对于提高学生的综合能力和全面素质具有重要意义。 1.2、研究现状Android是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。Google与开放手机联盟合作开发了Android,这个联盟由包括国移动、摩托罗拉、高通、宏达电和T-Mobile在内的30多家技术和无线应用的领军企业组成。Google通过与运营商、设备制造商、开发商和其他有关各方结成深层次的合作伙伴关系,希望借助建立标准化、开放式的移动电话软件平台,在移动产业内形成一个开放式的生态系统。 Android主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导Android实训报告基于Android游戏开发全文共6页,当前为第2页。Android实训报告基于Android游戏开发全文共6页,当前为第2页。及开发。尚未有统一文名称,国大陆地区较多人使用"安卓"或"安致"。Android操作系统最初由AndyRubin开发,主要支持手机。2005年8月由Google收购注资。2007年11月,Google与84家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于2008年10月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。2011年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 Android实训报告基于Android游戏开发全文共6页,当前为第2页。 Android实训报告基于Android游戏开发全文共6页,当前为第2页。 2012年11月数据显示,Android占据全球智能手机操作系统市场76%的份额,国市场占有率为90%。目前基于Android的移动终端上的软件应用开发很火热,Android平台的开发已越来越强大。 Android是一种以Linux为基础的开放源码操作系统,主要使用于便携设备。Android操作系统最初由AndyRubin创办,最初只支持手机。2005年由Google收购注资,并拉拢多家制造商组成开放手机联盟(OpenHandsetAlliance)开发改良,逐渐扩展到到平板电脑及其他领域上。 二、实训主要任务、重点及难点2.1、任务认识移动互联
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值