android初学之Sqlite数据库基本操作(上)

SQLite存在用户的手机上
SQlite存储时不区分类型
位置:data/data/包名/databases目录下
工程中:
db包中创建helper类      //写一个类继承SQLiteOpenHelper,重写构造函数(4个参数)与oncreate和onupgrade方法,构造函数创建数据库,oncreate创建数据库中的表,onupgrade修改表
domian包中创建userbean类     //无参和有参的构造函数,set,get方法,toString方法
dao包中创建dao类     //Dao里面是增删改查的方法,通过获取数据库对象,执行sql语句
test测试类或者activity中执行操作     //创建测试类继承AndroidTestCase,清单文件中配置test节点,方法名以test开头; 先通过helper对象获取数据库,再通过dao对象,执行操作

 

创建数据库:
在用户启动程序的时候,代码在用户手机上创建数据库,创建表,写一个类继承SQLiteOpenHelper,重写构造函数(4个参数)与oncreate和onupgrade方法
public MyHelper(Context context) {
		/**
		 * Context context:环境
		 * String name:数据库名字
		 * Cursorfactory factory:游标工厂,null为默认的
		 * version:数据库版本从1开始
		 */
		super(context, "users.db", null, 1);
	}


public void onCreate(SQLiteDatabase db) {		//可以执行创建表的操作
	db.execSQL("CREATE TABLE USER(id INTEGER PRIMARY KEY AUTOINCREMENT,name VARCHAR(20))");
    } 
	

public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {	//修改表,下面的是添加一列,在testCreateDB方法中要执行到就要改变数据库版本
	
	db.execSQL("ALTER TABLE user ADD balance INTEGER" );
}
在domain中创建Userbean 
 无参和有参的构造函数,set,get方法,toString方法

 

在dao中UserDao里面是增删改查的方法
private MyHelper myhelper;
 //构造函数
 public UserDao(Context context) {
  myhelper = new MyHelper(context); // 创建helper类对象
 }


 
 //增删改可以有两种方法:一种是执行sql语句db.execSQL(); 第二种是ContentValue
 //查询两种方法rawQuary(),quary()

 

public void insert(User user) {		//增
	MyHelper myhelper = new MyHelper(context); // 创建helper类对象
	SQLiteDatabase db = myhelper.getWritableDatabase(); // 获取可写的数据库
	db.execSQL("INSERT INTO user(name, password) VALUES (?,?)", new Object[]{user.getName(), user.getPassword()} );	//执行sql语句
		
	/*第二种插入操作
	ContentValues values = new ContentValues();	//ContentValues类似于Map,用来装载数据的集合
	values.put("name", user.getName());			//向集合中装入数据,键是列名,值是要插入的值
	values.put("password", user.getPassword());
	/**
	 * 第二个参数可以是null,也可以是随便的一个列名(用来插入null记录)
	 * 返回一个long,-1为插入出错
	 */
	long i = db.insert("user", "id", values);			//执行插入操作,指定表明,指定数据
        */
		
		
		db.close();	//关闭数据库释放资源
	}

你可能感兴趣的:(android初学之Sqlite数据库基本操作(上))