SQLite支持大部分标准的SQL。
SQLite是无类型数据数据库(类似JavaScript),除主键外无数据类型也无数据长度(主键只能为int),不过建议在声明字段时最好写上数据类型和长度,符合SQL规范才能通用。
SQL分页语句和MySQL一样:select * from tableName limit pageSize offset beginIndex或select * from tableName limit beginIndex,pageSize。
获取表中最后一行数据的id:select last_insert_rowid()。
android中使用SQLite不需要使用JDBC创建连接,SQLiteDatabase类内部会自己创建。
Android中创建SQLite数据库:
public class DBOpenHelper extends SQLiteOpenHelper { public static SQLiteDatabase createDB(Context context) { DBOpenHelper openHelper = new DBOpenHelper(context); return openHelper.getWritableDatabase();// 第一次调用此方法或getReadableDatabase方法会创建数据库 } public DBOpenHelper(Context context) { // 数据库文件保存在'/data/data/appName/appPackageName/databases/'目录中 super(context, "test.db",// 数据库文件名 null,// 是用默认游标工厂 1// 版本号不能小于1,小于1会抛异常,一般初始版本从1开始 ); } @Override public void onCreate(SQLiteDatabase db) { // 数据库创建时被触发,此方法内一般用于创建表等 db.execSQL("create table person(person_id integer primary key autoincrement,name verchar(20),age integer)"); } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // 数据库版本号更新时被触发,此方法一般操作数据库版本升级,如删除旧表,创建新表,修改表等 db.execSQL("alter table person add sex verchar(2)"); } }