一、增删改查
增
改
查
删
这是删除之前
删除三条
Dao.java
package com.example.databasedemo; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.sqlite.SQLiteDatabase; import android.util.Log; /** * 这个类用于对数据库的增删改查 */ public class Dao { private final DatabaseHelper mHelper; private static final String TAG="Dao"; public Dao(Context context){ //创建数据库 //Ctrl+Alt+F,之后加回车,创建成员变量 mHelper = new DatabaseHelper(context); } public void insert(){ SQLiteDatabase db = mHelper.getWritableDatabase(); // String sql="insert into "+Constants.TABLE_NAME+"(_id,name,age,salary,phone) values(?,?,?,?,?)"; // Object []obj={1,"zzw",19,2,1234567890}; // db.execSQL(sql,obj); ContentValues values =new ContentValues(); //插入数据 values.put("_id",2); values.put("name","zs"); values.put("age",23); values.put("salary",5); values.put("phone",12345); db.insert(Constants.TABLE_NAME,null,values); db.close(); } public void delete(){ SQLiteDatabase db = mHelper.getWritableDatabase(); // String sql="delete from "+Constants.TABLE_NAME+" where name = ?"; // Object []obj={"zzw"}; // db.execSQL(sql,obj); int result = db.delete(Constants.TABLE_NAME, null, null); Log.d(TAG,"result="+result); db.close(); } public void update(){ SQLiteDatabase db = mHelper.getWritableDatabase(); // String sql="update "+Constants.TABLE_NAME+" set salary= ? where name = ?"; // Object []obj={3,"zzw"}; // db.execSQL(sql,obj); ContentValues values = new ContentValues(); values.put("phone",54321); db.update(Constants.TABLE_NAME,values,null,null); db.close(); } public void query(){ SQLiteDatabase db = mHelper.getWritableDatabase(); // String sql="select * from "+Constants.TABLE_NAME+" where name = ?"; // String []obj={"zzw"}; // Cursor cursor = db.rawQuery(sql, obj); // while (cursor.moveToNext()){ // String name = cursor.getString(cursor.getColumnIndex("name")); // String age = cursor.getString(cursor.getColumnIndex("age")); // Log.d(TAG,"名字:"+name+"年龄:"+age); // } // cursor.close(); Cursor cursor = db.query(Constants.TABLE_NAME, null, null, null, null, null, null); while (cursor.moveToNext()){ int id = cursor.getInt(0); String name = cursor.getString(1); Log.d(TAG,"ID="+id+"name="+name); } cursor.close(); db.close(); } }
二、数据库事务
两个特点
1、安全性
通过Try{}Catch{}的进行,保证一次性将Try中的部分全部执行,避免数据丢失。
2、高效性
可以在短时间内将大量数据先写入内存,然后一次写入数据库。