Android SQLITE 简单起步
1:定义表的结构和名字,我使用以下方法:
public interface Constatnts extends BaseColumns {
public static final String TABLE_NAME = "test";
public static final String TIME = "time";
public static final String TITLE = "title";
}
在这里,我继承BaseColumns的目的,是直接定义"_ID"字段
2:定义SQLiteOpenHelper 的子类,来对应一个数据库,重载必须的onCreate 和 onUpgrade。里面通过execSQL调用适当的SQL 语句。
@Override
// 这个函数会在第一次执行数据库操作的时候被调用到。
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL("CREATE TABLE " + TABLE_NAME + " (" + _ID
+ " INTEGER PRIMARY KEY AUTOINCREMENT, " + TIME
+ " INTEGER," + TITLE + " TEXT NOT NULL);"); //注意,最好声明字段类型,以免不必要的麻烦。
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXITS "+ TABLE_NAME);
onCreate(db);
}
3:使用该数据库。
mydatabase = new Databasehelp(this);
插入数据:
SQLiteDatabase db = mydatabase.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(TIME, System.currentTimeMillis());
values.put(TITLE, string);
db.insertOrThrow(TABLE_NAME, null, values);
查询数据:
SQLiteDatabase db = mydatabase.getReadableDatabase();
Cursor cursor = db.query(TABLE_NAME, { _ID, TIME, TITLE, }, null, null, null,
 
相关文档:
package
{
import flash.data.SQLConnection;
import flash.data.SQLResult;
import flash.data.SQLStatement;
import flash.errors.SQLError;
import flash.events.SQLErrorEvent;
import flash.events.SQLEvent;
import flash.filesystem.File;
import mx.collections.Ar ......
1 TOP
这是一个大家经常问到的问题,例如在SQLSERVER中可以使用如下语句来取得记录集中的前十条记录:
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
但是这条SQL语句在SQLite中是无法执行的,应该改为:
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
其中limit 0,10表示从第0 ......
sqlite是
一个非常小巧的跨平台嵌入式数据库,它本身不提供加密功能,不过设计者明显也考虑了加密的方案,我们在源码中可以找到两个预留的加密接
口:sqlite3_key和sqlite3_rekey,可以通过实现这两个接口来达到加密的目的。
如何加密,已经有很多文章描述,可以参考:《
......