@MasterLeng
2015-04-08T10:07:26.000000Z
字数 1156
阅读 1210
android
sqlite
语句
最近在做的项目跟SQLite有关,是一个本地保存数据状态的应用,自己的SQLite语句太渣了,所以想写点开发终于到的坑来记录一下。
我们一般用继承SQLiteOpenHelper来实现对数据库的操作,比如:
public class OpenHelper extends SQLiteOpenHelper
{
public static final DATABASE_NAME = "openDatabase.db";
//此处构造方法需要重写 第二个参数是所建立的数据库名
public OpenHelper(Context context, String name, CursorFactory factory,int version)
{
super(context, name, factory, version);
}
//里面需要实现几个方法
public void onCreate(SQLiteDataBase db)
{
//建表语句,_ID必须有此处是integer类型自增,参数默认都是String
public String CREATE_TABLE_NAME = "CREATE TABLE openDB "
+" (_id integer primary key autoincrement, "
+" name,age,sex) ";
//执行建表语句
db.execSQL(CREATE_TABLE_NAME);
}
//数据库更新的时候调用
public void onUpGrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
}
}
增删改查:
增加内容:
String insertSQL = "INSERT INTO "+TABLE_NAME+" (age,name,sex) "+ "VALUES(?,?,?)";
db.execSQL(insertSQL,new String[]{"23","lilei","女"});
删除内容:
String deleteSQL = "DELETE FROM "+TABLE_NAME+" WHERE name=?";
db.execSQL(deleteSQL,new String[]{"23"});
修改内容:
String updateSQL = "UPDATE " + TABLE_NAME + "SET sex=? WHERE age = ?";
db.execSQL(updateSQL,new String[]{"男","23"});
查询内,此处加上了模糊查询:
String selectSQL = "SELECT sex FROM "+TABLE_NAME +"WHERE age =? "+ "AND name like ?";
db.execSQL(selectSQL,new String[]{"23","%"+"sa"+"%"});