149个版本 (27个稳定版本)
8.1.4 | 2024年8月14日 |
---|---|
8.1.2 | 2024年7月14日 |
8.1.1 | 2024年6月24日 |
7.2.4 | 2024年6月23日 |
0.10.3 | 2020年11月21日 |
#41 在 数据库接口
43,091 每月下载量
用于 16 个Crates (11个直接使用)
560KB
8K SLoC
ODBC-API
Rust ODBC绑定。ODBC(开放数据库连接)是一种连接各种数据源的开放标准。大多数数据源都提供了ODBC驱动程序。ODBC有两种典型的使用场景:
- 您的应用程序设计为可以与广泛的数据库一起工作,而无需重新部署。
- 您的数据库没有适合的本地Rust驱动程序可用,因此您想使用ODBC驱动程序。
另请参阅: ODBC是答案吗?
本crate目前测试于以下
- Microsoft SQL Server
- PostgreSQL
- MariaDB
- SQLite
当前的ODBC版本是 3.80
。
此crate基于 odbc-sys
ffi绑定构建,它提供了ODBC C接口的定义,但不会在其之上建立任何类型的抽象。
使用方法
请参阅指南以获取代码示例和功能介绍。
安装
要构建此库,您需要链接到系统ODBC驱动管理器的 odbc
库。它应该由构建自动检测。在Windows系统上已预安装。在Linux和OS-X上,必须安装unix-odbc。要连接到数据源,其ODBC驱动程序也必须安装。
Windows
无需操作。ODBC驱动管理器已预安装。
Ubuntu
sudo apt-get install unixodbc-dev
OS-X (intel)
您可以使用homebrew安装UnixODBC
brew install unixodbc
OS-X (ARM / MAC M1)
cargo build
不会拾取通过homebrew安装的 libodbc.so
,因为ARM Mac上的homebrew将其安装到 /opt/homebrew/Cellar
,而不是 /usr/local/opt/
。
您可以在此处找到有关构建期间搜索哪些目录的文档。
您也可以从源代码安装 unixODBC
- 将 unixODBC-2.3.9.tar.gz 文件复制到您能创建文件和目录的地方
- gunzip unixODBC*.tar.gz
- tar xvf unixODBC*.tar
./configure
make
makeinstall
Linux / OS-X via Nix Flakes
或者,如果您熟悉 Nix 生态系统或想尝试它,我们维基上有用户贡献的示例,介绍如何使用 Nix flakes 设置开发环境。
特性
- 使用数据源名称 (DSN) 连接
- 使用 ODBC 连接字符串连接
- 使用提示连接(Windows)
- 通过
log
crate 记录 ODBC 诊断和警告。 - 列式批量插入。
- 列式批量查询。
- 按行批量插入。
- 按行批量查询。
- 输出存储过程的输出参数。
- 预置和“一次性”查询。
- 事务
- 向查询传递参数
- 异步执行一次性查询
- 异步执行预置查询
- 异步连接到数据库
- 异步获取元信息
- 多线程
- 以流的形式插入大型的二进制/文本数据
- 以流的形式获取任意大小的文本/二进制数据
- 连接池
- 列出数据源表
- 检索多个结果集
依赖
~1–15MB
~210K SLoC