如何在Qt中使用数据库Sqlite保存和提取图片

 时间:2024-10-17 09:40:31

Qt数据库的操作可以说是Qt中的重点,数据库的操作无非就是四个,增献皲咝犴删改查。Qt中底层驱动由QSq造婷用痃lDriver实现,用户使用QSqlDatabase去操作数据库,与数据库的交互使用QSqlQuery。具体我们可以查看QtSQL帮助文档。下面我们来实现数据库的数据保存和提取。

如何在Qt中使用数据库Sqlite保存和提取图片

工具/原料

QtCreator4.2.1

Qt5.6.2

一张图片

方法/步骤

1、首先我们创建一个MainWindow的工程,不会的可以查看我的其他经验哦。很详细很具体的。这里我就把具体的目录结构留出来,大家自行尝试吧。这里我添加了一个资源文件,加入了一张图片,格式可以随意只要是Qt支持的就行了。

如何在Qt中使用数据库Sqlite保存和提取图片

2、这里我得说一下Qt支持的图片格式有哪些,我们可以查看QPixmap的帮助文档,这里我给出来了。这个很重要,因为有些图片不支持的,大家注意。

如何在Qt中使用数据库Sqlite保存和提取图片

3、首先我们需要安港粕登漪装sqlite3,至于其他的数据库操作以后我们再细谈吧。然后我们操作一下,sqlite3的命令有些不一样,这些命令是以点开头的芟坳葩津,像.help查看帮助,.exit退出,其他的help里面有的了,如果你要做sql操作,就直接用sql语句就行了,不用加点,记得末尾加分号,像,select*fromtable;这样就行了。

如何在Qt中使用数据库Sqlite保存和提取图片

4、接下来,我们首先创建一个数据库的连接,注意这氇筐塘瓠里如果你本身没有数据库,那么qt会以连接名自动创建一个,如果你有,那么设置连接名为你的数据库名就行了,这里我们赶时縻橼直接用连接名了。如图,这里我们建立了一个类,用来操作数据库,建立连接放在一个函数里实现,然后使用QSqlQuery去执行数据表的创建。注意数据库驱动名是大写的。

如何在Qt中使用数据库Sqlite保存和提取图片

如何在Qt中使用数据库Sqlite保存和提取图片

如何在Qt中使用数据库Sqlite保存和提取图片

5、然后我们把图片存入数据库,这里注意我们是把图片转为二进制数据流存进去的,所以需要转换为QByteArray,QSqlQuery执行sql语句将数据流插入数据库,注意这里的格式,bindvalue和prepare函数要对应,否则会出错的。

如何在Qt中使用数据库Sqlite保存和提取图片

6、然后就是提取图片,这里我们把图片从数据库提取出来显示到主窗口界面上,所以我们需要返回一个图片对象。我们的数据库里只有一条记录,所以我们直接用first函数提取处理即可,如果你有很多条记录,我们就需要使用QSqlRecord类去处理了,这个我们另外再说吧。

如何在Qt中使用数据库Sqlite保存和提取图片

7、最后,我们在Mainwindow的构造函数里面做用户操作,打开数据库,存入图片,提取图片,显示图片的操作。

如何在Qt中使用数据库Sqlite保存和提取图片

8、上面忘了说了,我们要在项目的project文件里添加sql支持,如下图。最终结果,图片显示出来了。我们查询数据库,里面有我们保存图片的记录的。

如何在Qt中使用数据库Sqlite保存和提取图片

如何在Qt中使用数据库Sqlite保存和提取图片

如何在Qt中使用数据库Sqlite保存和提取图片

怎么查看sql server日志 wps如何插入分页符 下载插件的安装 宁波海滨旅游攻略 如何确认板式换热器的堵塞与结垢
热门搜索
西湖的图片 强吻动漫 胖女人穿衣搭配图片 鞋子的图片 丰田rv4报价及图片