public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//参数分别为:activity,库名,游标的引用,版本号
SQLiteOpenHelper sqlite =new SQLiteOpenHelper(MainActivity.this, "test", null, 1) {
//版本号改变调用此方法
@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
// TODO Auto-generated method stub
}
//第一次创建数据库的时候调用
@Override
public void onCreate(SQLiteDatabase arg0) {
// TODO Auto-generated method stub
}
};
SQLiteDatabase sd = sqlite.getReadableDatabase();
//创建表
sd.execSQL("CREATE TABLE person (_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR, age SMALLINT)");
//插数据
sd.execSQL("INSERT INTO person VALUES (NULL, 'guoren12', '50')");
//更改数据
sd.execSQL("update person set name = 'guoren' where age = 50");
//删除数据
sd.execSQL("delete from person where age = 50");
//关闭资源
sd.close();
}
}
验证:
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
C:\Users\pzf>adb shell
$ cd data/data/com.example.android4_3/databases
cd data/data/com.example.android4_3/databases
$ sqlite3 test
sqlite3 test
SQLite version 3.7.11 2012-03-20 11:35:50
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .schema
.schema
CREATE TABLE android_metadata (locale TEXT);
CREATE TABLE person (_id INTEGER PRIMARY KEY AUTOINCREMENT, name VARCHAR, age SM
ALLINT);
sqlite> select * from person;
select * from person;
3|guoren12|50
sqlite>
ps:请先加权限,很多刷过的手机没有数据库要重新push一个。