
public class WeatherDataBaseHelper extends SQLiteOpenHelper {
private static final String TAG = "pin"
// private static final String CREAT_TABLE_SQL =
// "create table IPTV(_id integer primary key autoincrement,"
// +"_name String not null, _path String not null)"
// private static final String CREAT_TABLE_SQL = "create table " +
// DataTools.TABLE_NAME + "("
// + DataTools._ID + " integer autoincrement,"
// + DataTools.NAME + " String not null,"
// + DataTools.PATH + " String not null,"
// + DataTools.HASHCODE + " integer "
// + "primary key(" + DataTools._ID + "," + DataTools.HASHCODE + ")"
// + ")"
private static final String CREAT_TABLE_SQL = "create table " + DataTools.TABLE_NAME + "("
+ DataTools._ID + " integer primary key,"
+ DataTools.CITY + " String not null,"
+ DataTools.TEMP_CUR + " String not null,"
+ DataTools.TEMP_L + " String not null,"
+ DataTools.TEMP_H + " String not null,"
+ DataTools.STATUS + " String not null,"
+ DataTools.IMAGE + " blob not null" + ")"// blob
/**
* @param context
*/
public WeatherDataBaseHelper(Context context) {
super(context, DataTools.DB_NAME, null, DataTools.DATABASE_VERSION)
// TODO Auto-generated constructor stub
}
/**
* @param context
* @param name
* @param factory
* @param version
*/
public WeatherDataBaseHelper(Context context, String name, int version) {
super(context, name, null, version)
// TODO Auto-generated constructor stub
Log.v(TAG, " WeatherDataBaseHelper-------constructor------------")
}
@Override
public void onCreate(SQLiteDatabase db) {
Log.v(TAG, "WeatherDataBaseHelper on creat-------------------")
db.execSQL(CREAT_TABLE_SQL)
}
/**
* when version changed,updata database
*/
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.v(TAG, "on upgrade")
String sql = " DROP TABLE IF EXISTS " + DataTools.TABLE_NAME
db.execSQL(sql)
onCreate(db)
}
}
Android提供了5种方式来让用户保存持久化应用程序数据。根据自己的需求来做选择,比如数据是否是应用程序私有的,是否能被其他程序访问,需要多少数据存储空间等,分别是:
① 使用SharedPreferences存储数据
② 文件存储数据
③ SQLite数据库存储数据
④ 使用ContentProvider存储数据
⑤ 网络存储数据
创建数据库的类public class DBOpenHelper extends SQLiteOpenHelper {
public static final String DB_NAME = "test.db" //数据库名称
public static final int DB_VERSION = 1 //数据库版本号
public DBOpenHelper(Context context) {
super(context, DB_NAME, null, DB_VERSION)
}
@Override
public void onCreate(SQLiteDatabase db) {
//第一次调用getWritableDatabase()或getReadableDatabase()时会执行
//这个方法通常用来创建表,和初始数据的
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { //当数据库版本号更新时执行的方法
}
}
以下是获取数据库实体的方法
DBOpenHelper dbHelper = new DBOpenHelper(context)
SQLiteDatabase db = dbHelper.getWritableDatabase()
SQLiteDatabase db = dbHelper.getReadableDatabase()
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)