SQLite数据库

SQLite数据类型

NULL空值、INTEGER整型值、REAL浮点值、TEXT字符串、BLOB二进制对象

SQLiteDatabase创建,删除,执行SQL命令

1.创建数据库

SQLiteDatabase db = openOrCreateDatabase("user.db",MODE_PRIVATE,null);
  1. 执行SQL语句创建表格
    db.execSQL(String sql);
db.execSQL("create table if not exists stutb(_id integer primary key autoincrement,name text not null,sex not null,age integer not null)");
  1. 表中插入数据
    db.insert(table,nullColumnHack,values);
db.insert("stutb",null,values);
  1. 更新指定表中的特定数据
    db.update(table,values,whereClause,String[] whereArgs);
db.update("stutb",values,"_id>?",new String[]{"3"});//id>3的人性别改为女
  1. 删除指定表中的特定数据
    db.delete(table,whereClause,String[] whereArgs);
db.delete("stutb","name like ?",new String[]{"%三%"});//删除名字带有三字的人

6.查询
db.query(table,String[] columns,whereClause,whereArgs,grounpBy,having,orderBy);

Cursor c = db.query("stutb",null,"_id>?",new String[]{"0"},null,null,"name");

7.查询
db.rawQuery(sql,selectionArgs)

Cursor c = db.rawQuery("select * from stutb",null);

Cursor移动查询结果的记录指针

  1. move(int offset);
    指针向上或向下移动指定的行数,正数向下移动,负数向上移动
  2. boolean moveToFirst();
    将指针移动到第一行,移动成功返回true
  3. boolean moveToLast();
    将指针移动到最后一行,移动成功返回true
  4. boolean moveToNext();
    将指针移动到下一行,移动成功返回true
  5. boolean moveToPosition(int position);
    将指针移动到指定的行,移动成功返回true
  6. boolean moveToPrevious();
    将指针移动到上一行,移动成功返回true
    指针移动之后,调用Cursor的getXxx()方法获取该列的数据。

ContentValues类

ContentValues values = new ContentValues();
values.put("name","张三");

SQLiteOpenHelper

数据库的管理和工具类,用于创建和版本更新
一个类继承它,然后重写onCreate()和onUpgrade()方法
onCreate() 创建数据库时调用
onUpgrade() 版本更新时调用
getReadableDatabase() 创建或打开一个只读数据库
getWritableDatabase() 创建或打开一个读写数据库

你可能感兴趣的:(SQLite数据库)