专高一Day9

今天学习了SqLite

SQL语句

create table 表名( g_id integer PRIMARY KEY AUTOINCREMENT NOT NULL, g_name varchar,)

select * from 表名 where t_id=条件值

delete from 表名where id=条件值

insert into 表名 (字段名) values(值

update 表名 set(字段名) values(值)where id=1

新建数据库继承SQLiteOpenHelper

重写两个方法

onCreate(SQLiteDatabase db):创建数据库,在其中建表

onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion):更新数据库

增加数据

sqLiteDatabase.execSQL("insert into stu values(?,?,?)",new String[]{null,"dhg","20"});

sqLiteDatabase.execSQL("insert into stu values(?,?,?)",new String[]{null,"细狗","21"});

sqLiteDatabase.execSQL("insert into stu values(?,?,?)",new String[]{null,"大黄狗","22"});

查询数据

Cursor cursor=sqLiteDatabase.rawQuery("select *from stu",null);

while (cursor.moveToNext())

{

@SuppressLint("Range") int id=cursor.getInt(cursor.getColumnIndex("id"));

@SuppressLint("Range") String name=cursor.getString(cursor.getColumnIndex("name"));

@SuppressLint("Range") int age=cursor.getInt(cursor.getColumnIndex("age"));

Log.i("---dd", "querydata: "+id+name+age);

}

cursor.close();

修改数据

sqLiteDatabase.execSQL("update stu set age=? where name=?",new String[]{"50","大黄狗"});

删除数据

sqLiteDatabase.execSQL("delete from stu where name=? ",new String[]{"dhg"});

然后是第二种方法

增加数据

ContentValues contentValues=new ContentValues();

contentValues.put("name","cdd");

contentValues.put("age",50);

sqLiteDatabase.insert("stu",null,contentValues);

查询数据

Cursor cursor=sqLiteDatabase.query("stu",null,null,null,null,null,null);

while (cursor.moveToNext())

{

@SuppressLint("Range") int id=cursor.getInt(cursor.getColumnIndex("id"));

@SuppressLint("Range") String name=cursor.getString(cursor.getColumnIndex("name"));

@SuppressLint("Range") int age=cursor.getInt(cursor.getColumnIndex("age"));

Log.i("---dd", "querydata: "+id+name+age);

}

cursor.close();

修改数据

ContentValues contentValues=new ContentValues();

contentValues.put("age",100);

sqLiteDatabase.update("stu",contentValues,"name=?",new String[]{"cdd"});

删除数据

sqLiteDatabase.delete("stu","name=?",new String[]{"cdd"});

然后学习了事务

就是将大量数据添加到数据库

事务的方法:

beginTransaction();

db.endTransaction();

db.rollBack();

public void swdata(View view) {

ContentValues contentValues=new ContentValues();

for (int i = 0; i <=20 ; i++) {

contentValues.put("name","opo"+i);

contentValues.put("age",20+i);

sqLiteDatabase.insert("stu",null,contentValues);

}

sqLiteDatabase.setTransactionSuccessful();

sqLiteDatabase.endTransaction();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值