1、SQLiteDatabase是SQLite的数据库管理类,提供若干操作数据表的API。
在Android开发中,通常会使用SQLiteDatabase类来创建和管理本地数据库。通过SQLiteDatabase类,实现数据的持久化存储,并实现数据的增删改查功能。
2、管理类:用于数据库层面的操作
openDatabase:打开指定路径的数据库。
isOpen:判断是否已打开数据库。
close:关闭数据库
getVersion:获取数据库版本号
setVersion:设置数据库版本号。
3、事物类:用于事务层面的操作
beginTrasaction:开始事务;
setTransactionSuccessful:设置事务的成功标志
endTransaction:结束事务
4、数据处理类:用于数据表层的操作
execSQL:执行拼接好的SQL控制语句。
delete:删除某记录
update:更新符合条件的记录
insert:插入一条记录
query:执行查询操作,返回结果集的游标
rawQuery:执行拼接好的SQL查询语句,返回结果集的游标
package com.example.databases_text;
import androidx.appcompat.app.AppCompatActivity;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.btn_database);
}
public void database_click(View view){
//创建数据库,如果不存在就创建,存在就打开
//MODE_PRIVATE 私有模式,MODE_WORLD_READABLE 读写模式,MODE_WORLD_WRITEABLE 只写模式
//MODE_MULTI_PROCESS 多个进程可以打开
//MODE_ENABLE_WRITE_AHEAD_LOGGING 启用日志记录
//MODE_NO_LOCALIZED_COLLATORS 不包含本地化排序规则
//MODE_CREATE 如果数据库不存在则创建
//MODE_NO_CREATE 如果数据库不存在则不创建
//MODE_EXCLUSIVE 如果数据库存在则抛出异常
SQLiteDatabase db = openOrCreateDatabase("test.db", MODE_PRIVATE, null);
//创建表
db.execSQL("create table if not exists user(name varchar,pwd varchar)");
//插入数据
db.execSQL("insert into user(name,pwd) values('admin','123456')");
if(db!=null){
boolean x=db.isOpen();
Toast.makeText(this, "数据库创建成功,已经打开"+x, Toast.LENGTH_SHORT).show();
}
//关闭数据库
db.close();
}
}