# -*- coding: utf-8 -*-
require 'sqlite3'
require 'base64'
if
File.exist?('abc.db')
File.delete('abc.db')
end
db =
SQLite3::Database.new 'abc.db'
rows = db.execute
<<-SQL
create
table scenes(
id
integer primary key,
name varchar(30),
image
blob
);
SQL
image = File.open(
't.jpg' ,'rb').read
db.execute(
"INSERT INTO scenes (image) VALUES " +
"('#{
Base64::encode64( image ) }');" )
db.execute(
"SELECT * FROM scenes" ) do |scene|
image =
Base64::decode64( scene[2] )
File.open(
"back.png", "wb" ) do |back_out|
back_out << image
end
end
#一晚功夫...
下面是小改动,result以hash返回数据
# -*- coding: utf-8
-*-
require 'sqlite3'
require 'base64'
if
File.exist?('abc.db')
File.delete('abc.db')
end
db =
SQLite3::Database.new 'abc.db'
rows = db.execute
<<-SQL
create
table scenes(
id
integer primary key,
name varchar(30),
image
blob
);
SQL
image = File.open(
't.jpg' ,'rb').read
db.execute(
"INSERT INTO scenes (image) VALUES " +
"('#{
Base64::encode64( image ) }');" )
db.results_as_hash = true
db.execute(
"SELECT * FROM scenes" ) do |scene|
image =
Base64::decode64(scene['image'].to_s )
File.open(
"back.png", "wb" ) do |back_out|
back_out << image
end
end
分享到:
相关推荐
本文将深入探讨Ruby-SQLite3的使用方法、核心特性以及在实际开发中的应用。 首先,我们来了解如何在Ruby项目中安装SQLite3库。通过Ruby的包管理工具RubyGems,可以简单地执行以下命令来安装: ```bash gem install...
SQLite3 是一个轻量级、开源的嵌入式数据库引擎,它不需要独立的服务器进程,而是作为应用程序的一...通过理解如何处理依赖、安装特定版本以及在代码中使用该 gem,你可以顺利地将 SQLite3 集成到你的 Ruby 项目中。
这个程序可能包含了数据库操作的UI界面,用户可以通过选择本地图片,将图片上传到SQLite数据库,然后从数据库读取并显示在PictureBox中。这展示了C#与SQLite结合处理图片数据的能力,是学习数据库操作和文件处理的一...
本文将深入探讨`sqlite3-ruby`在Windows平台上的应用以及相关文件的含义。 首先,我们关注的三个文件分别是: 1. `sqlite3-ruby-1.3.1-x86-mingw32.gem`: 这是一个适用于MinGW32环境的Ruby gem包,版本为1.3.1,...
在Ruby on Rails框架中,SQLite3常被用作开发环境下的默认数据库,因其简单易用和快速响应而广受欢迎。当我们升级Rails到2.0.2版本时,系统会自动转向使用SQLite3作为数据库管理系统。 在这个压缩包中,有两个关键...
做大创过程中需要将大量Excel数据读入SQLite数据库,百度了很多,但并没有解决我的问题,摸索了一天,想出了一个稍显复杂的办法: 第一步:将xlsx或者xls文件另存为csv文件(注意不能直接修改后缀),如果文件有很多...
本教程将深入探讨如何在SQLite中上传和保存图片,以及如何下载这些图片。 首先,我们要理解SQLite并不直接支持存储二进制大对象(BLOB)如图片。但是,我们可以通过将图片转换为字节流并将其存储在BLOB类型的列中来...
对于 WinXP,你需要手动下载 SQLite3 的预编译库(例如 sqlite3.dll 和 sqlite3.h),将其放在系统的 PATH 路径下,或者 Ruby 的 lib 目录下。 安装完成后,你可以通过下面的代码测试是否成功: ```ruby require '...
本篇文章将详细探讨如何在WPF应用中使用SQLite数据库来存储和读取二进制图片。 一、SQLite简介 SQLite是一款开源、无服务器、零配置、事务性的SQL数据库引擎,适用于嵌入式环境,无需额外的安装或管理。它支持标准...
可以考虑使用缓存机制,或者将大图片进行压缩后再存储,减小数据库的负担。 7. **安全考虑**:在上传图片时,要确保文件来源的安全性,防止恶意代码注入。同时,处理用户输入时应进行适当的验证和清理。 8. **源码...
- **查询**:从数据库中查询图片时,获取到`BLOB`字段的内容,将其转换回字节数组,再通过`OutputStream`写入文件或者在内存中处理。 4. **ContentProvider和CursorLoader**:在Android环境中,通常会使用...
将SQLite与Ruby结合,开发者可以方便地进行数据库操作,而无需复杂的配置和额外的依赖。 在Ruby中使用SQLite,首先需要安装`sqlite3`库,这可以通过Ruby的包管理器`gem`来完成: ```bash gem install sqlite3 ``` ...
3. **从数据库读取图片**:查询图片记录时,将返回的`imageData`取出,再用NSData的`initWithData:`方法创建一个新的NSData对象,最后用这个NSData对象创建UIImage,如: ```objc UIImage *image = [[UIImage ...
当VBS通过ADO发出SQL查询时,这个驱动会将这些命令转换为SQLite能理解的格式,并将SQLite的响应转化为VBS可以通过ADO处理的形式。这使得开发者可以使用熟悉的ADO对象和方法来执行CRUD(创建、读取、更新、删除)操作...
描述中的“2分不能再少了”可能是指这个资源的价值或者评分,意味着这个SQLite的安装包和JDBC驱动对于某些用户来说是非常必要且有价值的。 在标签中,“SQLite”是数据库系统的名字,“sqlite3”是其命令行工具,...
假设我们已经成功安装并配置好了SQLiteODBC,下面将展示如何使用Python通过SQLiteODBC连接SQLite数据库: ```python import pyodbc # 数据库文件路径 db_file = 'C:\\path\\to\\your\\database.db' # ODBC DSN...
这意味着你的可执行文件将包含SQLite3的功能,无需在运行时依赖`sqlite3.dll`。然而,静态链接可能导致生成的可执行文件较大。 SQLite3的主要特点包括: 1. **零配置**:无需安装,只需要拷贝相关库文件到项目目录...
【Qt sqlite 实现的图片查询小工具及代码】是一个基于Qt框架和SQLite数据库技术的应用程序,主要用于查询和显示图片。这个工具提供了通过图片ID或命令行(CMD)查询功能,帮助用户快速找到并查看存储在数据库中的...
用Ruby + SQLite编写的语言学习工具重要说明:这些工具应在终端中运行(“命令行”)。 一旦下载了这个git仓库,就进入您终端中的目录,并准备好键入用Ruby + SQLite编写的语言学习工具。重要说明:这些工具应在终端...
当需要从数据库中取出图片时,查询`images_table`并获取`image_data`字段: ```java Cursor cursor = db.query("images_table", new String[]{"image_data"}, null, null, null, null, null); if (cursor....