Android SQLite使用
来源:互联网 发布:半条命2剧情知乎 编辑:程序博客网 时间:2024/06/08 15:37
讲解一下SQLite的用法:(不讲sql的语句)
/******真删改查的方法全写这里面*******/
public class DBHelper extends SQLiteOpenHelper {
private SQLiteDatabase db ;
public DBHelper(Context context) {
//上下文,数据库名字,数据库工厂,数据库版本
//第一个参数是数据库名字,第二个Null即可,第三个是数据库版本号,用来做判断升级的
super(context, Constants.DETAIL_ID_DBNAME, null,
Constants. DETAIL_ID_VERSION);
//得到一个可写 的数据库
db = super.getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
//在创建的时候直接创建一张表
String sql = "CREATE TABLE IF NOT EXISTS DETAIL ( deal_id TEXT PRIMARY KEY NOT NULL, image TEXT,brand_name TEXT,short_title TEXT,sell_count TEXT,groupon_price TEXT, market_price)";
db.execSQL(sql);
}
//这个是如果升级了数据库的版本,则会调用这个方法,数据库升级的时候,如果增加或者减少了字段,可以在这里面进行sql语句操作
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if (newVersion > oldVersion) {//判断新版本的数据库的版本是否大于旧版本
onCreate(db);
}
}
public void excuteSQL(String sql, Object... bindArgs) {
db.execSQL(sql, bindArgs);
}
// 插入
public long insert(String table, String nullColumnHack, ContentValues values) {
long rows = 0;
rows = db.insert(table, nullColumnHack, values);
return rows;
}
// 查询
public Cursor query(String table, String[] columns, String selection,
String[] selectionArgs, String groupBy, String having,
String orderBy) {
return db .query(table, columns, selection, selectionArgs, groupBy,
having, orderBy);
}
public Cursor query(String sql, String... selectionArgs) {
return db .rawQuery(sql, selectionArgs);
}
public void destory() {
if (db != null) {
db.close();
}
}
}
/*******************调用*****************************************/
//查询
private List<Tuan> queryData() {
db = new DBHelper(CollectionDetailActivity.this);
List<Tuan> list = new ArrayList<Tuan>();
Cursor cursor = db.query( "select * from "
+ Constants. DETAIL_ID_TABLENAME);
while (cursor.moveToNext()) {
Tuan tuan = new Tuan();
tuan.setDeal_id(cursor.getString((cursor.getColumnIndex( "deal_id"))));
tuan.setImage(cursor.getString((cursor.getColumnIndex( "image"))));
tuan.setBrand_name(cursor.getString((cursor
.getColumnIndex( "brand_name"))));
tuan.setShort_title(cursor.getString((cursor
.getColumnIndex( "short_title"))));
tuan.setSale_count(cursor.getString((cursor
.getColumnIndex( "sell_count"))));
tuan.setGroupon_price(cursor.getString((cursor
.getColumnIndex( "groupon_price"))));
tuan.setMarket_price(cursor.getString((cursor
.getColumnIndex( "market_price"))));
tuan.setImageBitmap(ImageUtil. getImage(tuan.getImage()));
list.add(tuan);
}
return list;
}
//插入
db = new DBHelper(ProductDetails.this);
db.excuteSQL(Constants. DETAIL_INSERT, tuan.getDeal_id(),
tuan.getImage(), tuan.getBrand_name(),
tuan.getShort_title(), tuan.getSale_count(),
tuan.getGroupon_price(), tuan.getMarket_price());
Toast. makeText(ProductDetails.this, "收藏成功" , Toast.LENGTH_SHORT )
.show();
Constants. DETAIL_INSERT="insert into DETAIL(deal_id,image,brand_name,short_title,sell_count,groupon_price,market_price) VALUES (?,?,?,?,?,?,?)";
0 0
- Android 使用SQLite数据库
- android SQLite 使用
- Android 使用SQLite数据库
- Android 使用SQLite数据库
- Android使用SQlite数据库
- android sqlite使用(1)
- Android使用SQLite
- android SQlite 的使用
- android SQLite使用介绍
- android的sqlite使用
- android 使用sqlite
- android 使用sqlite
- Android-使用嵌入式SQLite
- android学习-SQLite使用
- android sqlite 的使用
- Android学习:SQLite使用
- android SQLite使用
- Android 使用SQLite数据库
- Quartz 2D介绍及基本图形绘制
- Redis源码解析(1)——源码目录介绍
- 疯狂猜歌实现(6)—— 生成待选文字框随机文字以及动态生成已选框
- 程序员求职成功路(2) - 第3章 数据结构与算法
- 如何一步步实现在Android平台下运用OpenGl
- Android SQLite使用
- jQuery获取select的text
- 顺序表的基本运算(2)
- ADB+adbWireless 抛开USB调试,接入无线调试
- 第二周【项目3 - 体验复杂度】 ——(2)汉诺塔
- oracle、sqlserver及mysql数据库版本查看
- 数据结构实践——顺序表的基本运算
- 程序员求职成功路(3)
- 编译hadoop的eclipse插件hadoop-eclipse-plugin