SqlLite函数

/**
 * 
 */
package com.example.day_02_sqlite_.dao;


import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;


import com.example.day_02_sqlite_.MySQLiteOpenHelper;


/**
 * @author WJL
 * 
 */
public class StudentDao {


private SQLiteDatabase db;
private MySQLiteOpenHelper openHelper;


// 构造方法
public StudentDao(Context context) {
openHelper = new MySQLiteOpenHelper(context);


}


// 增
public void insert(String name, String sex) {
// 通过写数据库的方式,打开数据库,得到一个数据库对象
db = openHelper.getWritableDatabase();
// 得到ContentValues对象,对象里包含要插入的信息
ContentValues values = new ContentValues();
// 通过键值对形式设置数据,参数一:列名;参数二:列名对应的值
values.put("name", name);
values.put("sex", sex);
// 参数一:表名
// 参数二:如果ContentValues为空,插入的时候列名对应的值就插入"null"
// 参数三:要插入的数据
// 返回值(long):如果插入成功,返回插入的行ID,如果失败返回-1
db.insert("student", null, values);
// 关闭数据库,释放资源
db.close();
}


// 删
public void delete(String name) {
// 通过写数据库的方式,打开数据库,得到一个数据库对象
db = openHelper.getWritableDatabase();
// 参数一:表名
// 参数二:删除操作的条件
// 参数三:占位符对应的数据
// 返回值(int):删除时,影响了多少行
db.delete("student", "name = ?", new String[] { name });
// 关闭数据库,释放资源
db.close();
}


// 改
public void update(String name) {
// 通过写数据库的方式,打开数据库,得到一个数据库对象
db = openHelper.getWritableDatabase();
// 要修改的数据,通过键值对形式设置数据,
ContentValues values = new ContentValues();
// 参数一:列名;参数二:列名对应的值
values.put("sex", "妖");
// 参数一:表名
// 参数二:修改后的数据
// 参数三:修改操作的条件
// 参数四:占位符对应的数据
// 返回值(int):修改时,影响了多少行
db.update("student", values, "name = ?", new String[] { name });
// 关闭数据库,释放资源
db.close();
}


// 查
public void select(String name) {
// 通过写数据库的方式,打开数据库,得到一个数据库对象
db = openHelper.getWritableDatabase();
/*
* Table 表名 Columens 要返回的列 Selection 查询条件 selectionArgs 查询条件占位符对应的内容
* groupBy 分组判断条件 Having 是否含有的判断条件 orderBy 排序判断条件 Limit 分页查询判断条件
*/


// 返回值(Cursor):包含查询到的数据
Cursor cursor = db.query("student", new String[] { "name", "sex" },
"name = ?", new String[] { name }, null, null, null, null);


while (cursor.moveToNext()) {


String uesrName = cursor.getString(cursor.getColumnIndex("name"));
String sex = cursor.getString(cursor.getColumnIndex("sex"));


Log.i("MainActivity", "uesrName=" + uesrName + "   sex=" + sex);
}
// 关闭数据库,释放资源
db.close();
}

}

=======================================================================================================

/**
 * 
 */
package com.example.day_02_sqlite_;


import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;


/**
 * @author WJL
 * 
 */
public class MySQLiteOpenHelper extends SQLiteOpenHelper {


/**
* @param context
* @param name  数据库的名称 (参数二)
* @param factory 数据库游标的工厂类(参数三)
* @param version 数据库的版本(参数四)
*/
public MySQLiteOpenHelper(Context context) {

super(context,  "1409a", null, 1);
}



@Override//数据库创建
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table student( id integer primary key autoincrement,name varchar(20), sex varchar(20) )");
}



@Override//数据库升级 根据数据库的版本判断是否需要升级
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

}




}

==============================================================================================

package com.example.day_02_sqlite_;


import com.example.day_02_sqlite_.dao.StudentDao;


import android.os.Bundle;
import android.app.Activity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.util.Log;
import android.view.Menu;
import android.view.View;


public class MainActivity extends Activity {


private StudentDao studentDao;


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//参数一:数据库的路径
//参数二:工厂类
//参数三:打开数据库的模式;读写,只读
// SQLiteDatabase  db= SQLiteDatabase.openDatabase(path, factory, OPEN_READWRITE);

studentDao = new StudentDao(this);
}


// 插入
public void insert(View v) {

studentDao.insert("张三", "男");
studentDao.insert("李四", "男");
}


// 删
public void delete(View v) {
studentDao.delete("张三");
}


// 改
public void update(View v) {
studentDao.update("李四");


}


// 查
public void select(View v) {
studentDao.select("李四");
}


}

你可能感兴趣的:(SqlLite函数)