SQLite是遵照ACID的关系数据库管理系统,它包含在一个相对小的C程式庫中。它是D.RichardHipp创建的公有领域项目.SQLite 是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是在世界上最普遍部署的 SQL 数据库引擎。SQLite 源代码不受版权限制。java
值得一提的是,android和ios使用的数据库同样,都是SQLite.linux
package com.amos.android_database; import android.content.Context; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; /** * Created by amosli on 14-6-10. */ public class MyDBHelper extends SQLiteOpenHelper{ /** * 建立数据库的构造方法 * @param context 应用程序上下文 * name 数据库的名字 * factory 查询数据库的游标工厂通常状况下用sdk默认的 * version 数据库的版本通常大于0 */ public MyDBHelper(Context context) { super(context, "test.db", null, 4); } private String tag = "MyDBHelper.class"; /** * 在数据库第一次建立时会执行 * @param db */ @Override public void onCreate(SQLiteDatabase db) { Log.d(tag,"onCreate....."); //建立一个数据库 db.execSQL("create table person (personid integer primary key autoincrement ,name varchar(30) )"); } /** * 更新数据的时候调用的方法 * @param db * @param oldVersion * @param newVersion */ @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { Log.d(tag,"onUpgrade*******"); //增长一列 db.execSQL("alter table person add phone varchar(13) null"); } }
MyActivity.javaandroid
package com.amos.android_database; import android.app.Activity; import android.os.Bundle; public class MyActivity extends Activity { /** * Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); MyDBHelper myDBHelper = new MyDBHelper(this); myDBHelper.getReadableDatabase(); myDBHelper.close(); } }
下载地址:http://www.sqlitestudio.pl/ ios
安装:git
chmod 777 sqlitestudio-2.1.5.bin ./sqlitestudio-2.1.5.bin
执行上面的linux命令,第一句是赋权限,第二句是打开工具github
打开DDMS,从data/data/com.amos.andriod_database/databases下导出test.dbsql
3).用sqlitestudio打开test.db数据库
添加数据库服务器
选择test.dbapp
执行onCreate方法时建立的person表
执行onUpgrade方法更新语句的时候