热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Rust如何连接SQLite数据库

这篇文章主要介绍Rust如何连接SQLite数据库,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!使用Rust语言连接操作SQLi

这篇文章主要介绍Rust如何连接SQLite数据库,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

使用 Rust 语言连接操作 SQLite 数据库,我使用 rusqlite 这个 crate。

看例子:

首先,使用 cargo 创建一个 Rust 项目,然后添加依赖 rusqlite:

Rust如何连接SQLite数据库

来到 main.rs,其余所有的代码都写在这里。

首先引入 rusqlite 相关的类型,并建立一个 Person struct:

Rust如何连接SQLite数据库

Person 有三个字段,id、name 和 data,其实本例中,我们只会用到前两个字段。

下面,编写一个用来创建数据库和 person 表的函数:

Rust如何连接SQLite数据库

该函数会创建名为 data.db 的数据库文件(如果不存在的话),然后打开一个数据库lian jie,并删除 person 表(如果存在的话),然后再建立一个 person 表,最后将 Connection 返回。

接下来,我们再创建一个 insert_data 函数,它用来插入两条数据,它使用 create_db 函数返回的 Connection 的引用作为参数:

Rust如何连接SQLite数据库

再创建一个可以从数据库查询数据的函数 get_data,它会返回一个 Person 的 Vec:

Rust如何连接SQLite数据库

最后,我们在 main 函数里依次调用这些函数,并把从数据库读取的数据进行打印:

Rust如何连接SQLite数据库

运行结果:

Rust如何连接SQLite数据库

以上是“Rust如何连接SQLite数据库”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程笔记行业资讯频道!


推荐阅读
  • 环境Time2022-04-11Rust1.60.0前言说明基于标准库来学习各种数据结构,并不是从头实现数据结构,未考虑实现性能。特点相比较二叉树,二叉搜索树的左节点都比父节点小, ... [详细]
  • C++程序员视角下的Rust语言
    自上世纪80年代初问世以来,C就是一门非常重要的系统级编程语言。到目前为止,仍然在很多注重性能、实时性、偏硬件等领域发挥着重要的作用。C和C一样&#x ... [详细]
  • 我正在一个涉及SQLite的项目中,我只有一个数据库文件,现在我正在测试我的应 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文详细介绍了MysqlDump和mysqldump进行全库备份的相关知识,包括备份命令的使用方法、my.cnf配置文件的设置、binlog日志的位置指定、增量恢复的方式以及适用于innodb引擎和myisam引擎的备份方法。对于需要进行数据库备份的用户来说,本文提供了一些有价值的参考内容。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • 本文讨论了clone的fork与pthread_create创建线程的不同之处。进程是一个指令执行流及其执行环境,其执行环境是一个系统资源的集合。在调用系统调用fork创建一个进程时,子进程只是完全复制父进程的资源,这样得到的子进程独立于父进程,具有良好的并发性。但是二者之间的通讯需要通过专门的通讯机制,另外通过fork创建子进程系统开销很大。因此,在某些情况下,使用clone或pthread_create创建线程可能更加高效。 ... [详细]
  • MyBatis多表查询与动态SQL使用
    本文介绍了MyBatis多表查询与动态SQL的使用方法,包括一对一查询和一对多查询。同时还介绍了动态SQL的使用,包括if标签、trim标签、where标签、set标签和foreach标签的用法。文章还提供了相关的配置信息和示例代码。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了Mycat水平分表相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 如果您是Java开发人员,您会发现Rust相对容易掌握,这要归功于这两种语言的相似性。technology-most-loved-dreaded-and-wantedclass& ... [详细]
  • Iamcopyingapre-existingdatabasetodatadatapackagenamedatabasesusingcodelearnedfromusi ... [详细]
  • 在Android Studio中查看SQLite数据库
    原来查看数据库内容,我们一般都是将数据库文件从手机导出,再用专门的软件打开查看,比较繁琐。最近发现了一个比较方便的方法:使用工具stetho。使用方式在gradle中配置depen ... [详细]
  • SQLite3是一个广泛使用的数据库,从linux,windows到安卓都有SQLite的应用。本文介绍SQLite3在windows上的编译。SQLite3提供了多种源代码的下载 ... [详细]
author-avatar
牛粪不插花88
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有