Android中数据库的使用

本文详细介绍了如何使用SQLite进行数据库的基本操作,包括创建数据库和表、数据的增删改查及排序等功能,并提供了具体的代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

增删改查排序等使用

其他相关查询:http://www.w3school.com.cn/sql/index.asp

创建数据库、建表:

/*
        参数二:为数据库名字
        参数四:版本号
         */
        so = new SQLiteOpenHelper(context, "test", null, 1) {
            @Override
            public void onCreate(SQLiteDatabase db) {
                // 名字为test的数据库不存在是走这个方法
            }

            @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                //版本号发生改变时走这个
            }

        };
        db = so.getWritableDatabase();
        //建表create table if not exists 表名(字段 数据类型)
        db.execSQL("create table if not exists manggai(id integer primary key autoincrement,name varchar,age integer)");

2、增

 public void insert(List<Sql_Column> list) {
        db.beginTransaction();
        try {
            //插入语句
            for (Sql_Column sql_Column : list) {
            //insert into 表名(字段(不写,默认全部)) values(?,?)
                db.execSQL("insert into manggai(name,age) values(?,?)", new Object[]{sql_Column.name, sql_Column.age});
            }
            db.setTransactionSuccessful();
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            db.endTransaction();
        }
    }

3、删

//删
    public void delete(int age) {
        //删除,delete from 表名 where 条件
        db.execSQL("delete from manggai where age=?", new Object[]{age});
    }

4、改

//改
    public void update(String name, int age) {
        //修改:update 表名 set name=? where age=? name是要改的,age是修改条件
        db.execSQL("update manggai set name=? where age=?", new Object[]{name, age});
    }

5、查

//查
    public ArrayList<Sql_Column> query() {
        ArrayList<Sql_Column> list = new ArrayList<>();
        //查询所有数据
        //select 字段(*表示所有) from 表名 where 条件;
        //select *from manggai order by 字段 asc(升序)
        //select *from manggai order by 字段 desc(降序)
        Cursor cursor = db.rawQuery("select *from manggai", null);

        if (cursor == null) {
            return null;
        }
        while (cursor.moveToNext()) {
            Sql_Column sql_column = new Sql_Column();
            sql_column.name = cursor.getString(cursor.getColumnIndex("name"));
            sql_column.age = cursor.getInt(cursor.getColumnIndex("age"));
            list.add(sql_column);
        }
        cursor.close();
        return list;
    }

源码下载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值