toql_mysql_async

Crates.iotoql_mysql_async
lib.rstoql_mysql_async
version0.4.2
sourcesrc
created_at2021-12-15 09:50:15.083901
updated_at2022-04-25 11:04:06.037143
descriptionMySQL Async for Toql
homepage
repositoryhttps://github.com/roy-ganz/toql
max_upload_size
id498235
size32,698
Artos (roy-ganz)

documentation

README

MySQL Async support for Toql

Add this to your Cargo.toml:

[dependencies]
toql = {version = "0.4", features = ["serde"]}
toql_mysql_async = "0.4"

And get your Toql with

use toql_mysql_async::{prelude::MySqlAsync, mysql_async::Pool};
use toql::prelude::Cache;

let database_url = "mysql://USER:PASS@localhost:3306/DATABASE";
let pool = Pool::new(database_url);
let mut conn = pool.get_conn().await?;
let cache = Cache::new();
let mut toql = MySqlAsync::from(conn, &cache);

A transaction can be started from a connection:

use toql_mysql_async::mysql_async::TxOpts;

// let conn = ...
// let cache = ...

let tx_opts = TxOpts::default();
let tx = conn.start_transaction(tx_opts).await?;
let mut toql = MySqlAsync::from(tx, &cache);

License

Toql MySqlAsync is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

Commit count: 555

cargo fmt