android操作sqlite3的blob字段
sqlite3很容易使用。
数据库文件是从网上下载得到的,见android使用sqlite3数据库(网络下载文件)。
显示这两个字段的代码,只取第一行记录:
SQLiteDatabase database = SQLiteDatabase
.openOrCreateDatabase(getFileStreamPath(fileName)
.getAbsolutePath(), null);
Cursor cursor = database.rawQuery(
"select name,image from users", new String[] {});
if (cursor.moveToFirst()) {
userName = cursor.getString(0);
ByteArrayInputStream stream = new ByteArrayInputStream(
cursor.getBlob(1));
image = Drawable.createFromStream(stream, "image");
Log.i(TAG, "user name: " + userName);
}
database.close();
声明的成员变量,供上面代码使用的:
private String userName;
private Drawable image;
在对话框里面显示:
AlertDialog.Builder builder = new Builder(
WelComeMainActivity.this);
builder.setMessage("数据更新完毕。用户名:" + userName);
builder.setTitle("提示");
builder.setIcon(image);
builder.setPositiveButton("确认", new OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int which) {
dialog.dismiss();
}
});
builder.create().show();
- 大小: 35.3 KB
分享到:
相关推荐
一个简单的基于Android的Sqlite数据库的操作封装,它有如下的好处:便捷地创建表和增添表字段灵活的数据类型处理通过操作对象来insert或者update表记录支持多种查询方式,支持多表自定义的复杂查询,支持分页查询支持...
- 使用合适的字段类型,如TEXT、INTEGER、REAL和BLOB。 - 为表添加主键,以保证数据唯一性。 - 定期备份数据库,防止数据丢失。 - 在不影响业务的情况下,尽量减少数据库操作次数,提高效率。 通过上述知识点,我们...
SQLite3 支持 NULL,INTEGER,REAL(浮点数字),TEXT(字符串文本)和 BLOB(二进制对象)数据类型,实际上 SQLite3 也接受 varchar(n),char(n),decimal(p,s) 等数据类型,只不过在运算或保存时会转成对应的五种...
在Android中,SQLite使用SQL语言进行数据库操作。 SQLite数据类型采用动态数据类型,会根据存入值的类型自动判断。基本数据类型包括:NULL、INTEGER、REAL、TEXT和BLOB。其中,VARCHAR是TEXT类型的一个子集,它是一...
本文将深入探讨Android环境下,OrmLite与SQLite原生API的数据库操作对比。 首先,SQLite原生API提供了直接与数据库交互的功能,包括创建表、插入数据、查询、更新和删除等操作。开发者需要编写SQL语句,并通过...
读取图片则需要从BLOB字段中获取字节数组,再转换回Bitmap对象: ```java public Bitmap getImage(long id) { SQLiteDatabase db = getReadableDatabase(); Cursor cursor = db.query(TABLE_NAME, new String[]{...
3. SQLite 在解析 CREATE TABLE 语句时,会忽略 CREATE TABLE 语句中跟在字段名后面的数据类型信息。 4. 使用 SQLiteOpenHelper 对数据库进行版本管理。 5. onCreate 方法在数据库第一次被创建时调用,用于生成表...
以上就是Android平台下SQLite数据库的基础知识,包括数据存储方式、数据类型、数据库操作以及SQLiteOpenHelper的使用。掌握这些知识后,开发者可以有效地在Android应用中实现数据的持久化存储和管理。
以上就是关于“android 图片在sqlite里的存取操作”的详细步骤,包括将图片转换为字节数组存储到SQLite,从数据库中读取并恢复为Bitmap,以及在ListView中显示图片的过程。实践中还需要注意内存管理和性能优化,确保...
- 创建SQLite数据库:首先,需要创建一个SQLiteOpenHelper子类,定义数据库版本号、数据库名以及创建表的SQL语句,其中表结构应包括一个用于存储图片二进制数据的BLOB字段。 - 插入图片:获取ContentValues对象,...
2. **Blob字段创建**:在创建表的时候,我们需要定义一个Blob类型的字段来存储图片数据。例如: ```sql CREATE TABLE Images ( id INTEGER PRIMARY KEY AUTOINCREMENT, imageName TEXT, imageData BLOB ); ``...
SQLite的数据类型包括 INTEGER、REAL、TEXT、BLOB,它们分别对应Java中的整型、浮点型、字符串和字节数组。在创建表时,需要指定每列的数据类型。例如,创建用户表可能包含ID(INTEGER)、用户名(TEXT)和密码...
做Android应用,不可避免的会与SQLite打交道。随着应用的不断升级,原有的数据库结构可能已经不再适应新的功能,这时候,就需要对SQLite数据库的结构进行升级了。 SQLite提供了ALTER TABLE命令,允许用户重命名或...
在Android平台中,集成了一个嵌入式关系型数据库–SQLite,它支持NULL、INTEGER、REAL(浮点数字)、TEXT(字符串文本)和BLOB(二进制对象)数据类型,虽然只支持五种数据类型,实际上可以接受varchar(n),char(n),decimal...
### Android SQLite 详解 #### 一、SQLite简介 SQLite 是一款用 C 语言编写的开源嵌入式数据库引擎。这款数据库引擎支持 SQL92 的大部分标准,并能够在多种主流操作系统上运行,包括 Windows、Linux 和 macOS 等。...
如果需要存储二进制数据,如`profileImage`,可以直接存入SQLite的BLOB字段。 为了将`User`对象写入数据库,我们需要一个`UserDatabaseHelper`类,它扩展了`SQLiteOpenHelper`。在这个类中,我们可以定义一个`...
在Android中,我们通常通过SQLiteOpenHelper这个抽象类来操作SQLite数据库。SQLiteOpenHelper提供了一系列的方法来创建、升级和打开数据库。你需要继承SQLiteOpenHelper并覆盖onCreate()和onUpgrade()方法。onCreate...