Expand description
MySQL driver for sql-composer (sync and async).
Provides both sync and async wrappers for composing SQL templates with bind values against MySQL databases.
- Async:
MysqlConnwrapsmysql_async::Conn(featureasync, enabled by default) - Sync:
MysqlConnectionwrapsmysql::Conn(featuresync, enabled by default)
§Async Example
ⓘ
use sql_composer::composer::Composer;
use sql_composer::driver::ComposerConnectionAsync;
use sql_composer::types::{Dialect, TemplateSource};
use sql_composer::bind_values;
use sql_composer_mysql::MysqlConn;
let pool = mysql_async::Pool::new("mysql://root@localhost/test");
let conn = pool.get_conn().await?;
let conn = MysqlConn::from_conn(conn);
let template = sql_composer::parser::parse_template(
"SELECT * FROM users WHERE id = :bind(user_id)",
TemplateSource::Literal("example".into()),
)?;
let composer = Composer::new(Dialect::Mysql);
let values = bind_values!("user_id" => [mysql_async::Value::from(1i32)]);
let (sql, params) = conn.compose(&composer, &template, values).await?;§Sync Example
ⓘ
use sql_composer::composer::Composer;
use sql_composer::driver::ComposerConnection;
use sql_composer::types::{Dialect, TemplateSource};
use sql_composer::bind_values;
use sql_composer_mysql::MysqlConnection;
let conn = mysql::Conn::new("mysql://root@localhost/test")?;
let conn = MysqlConnection::from_conn(conn);
let template = sql_composer::parser::parse_template(
"SELECT * FROM users WHERE id = :bind(user_id)",
TemplateSource::Literal("example".into()),
)?;
let composer = Composer::new(Dialect::Mysql);
let values = bind_values!("user_id" => [mysql::Value::from(1i32)]);
let (sql, params) = conn.compose(&composer, &template, values)?;Re-exports§
pub use mysql_async;pub use mysql;
Structs§
- Mysql
Conn - A wrapper around
mysql_async::Connthat implementssql_composer::driver::ComposerConnectionAsync. - Mysql
Connection - A wrapper around
mysql::Connthat implementssql_composer::driver::ComposerConnection.
Enums§
- Async
Error - Error type for async sql-composer-mysql operations.
- Sync
Error - Error type for sync sql-composer-mysql operations.
Type Aliases§
- Error
- Error type alias — resolves to
AsyncErrorfor backward compatibility.