diff --git a/sqlx-core/src/any/arguments.rs b/sqlx-core/src/any/arguments.rs
index 2c05e3fd5b..5a617c1419 100644
--- a/sqlx-core/src/any/arguments.rs
+++ b/sqlx-core/src/any/arguments.rs
@@ -42,7 +42,7 @@ impl Default for AnyArguments<'_> {
impl<'q> AnyArguments<'q> {
#[doc(hidden)]
- pub fn convert_to<'a, A: Arguments<'a>>(&'a self) -> Result
+ pub fn convert_into<'a, A: Arguments<'a>>(self) -> Result
where
'q: 'a,
Option: Type + Encode<'a, A::Database>,
@@ -60,12 +60,12 @@ impl<'q> AnyArguments<'q> {
i64: Type + Encode<'a, A::Database>,
f32: Type + Encode<'a, A::Database>,
f64: Type + Encode<'a, A::Database>,
- &'a str: Type + Encode<'a, A::Database>,
- &'a [u8]: Type + Encode<'a, A::Database>,
+ String: Type + Encode<'a, A::Database>,
+ Vec: Type + Encode<'a, A::Database>,
{
let mut out = A::default();
- for arg in &self.values.0 {
+ for arg in self.values.0 {
match arg {
AnyValueKind::Null(AnyTypeInfoKind::Null) => out.add(Option::::None),
AnyValueKind::Null(AnyTypeInfoKind::Bool) => out.add(Option::::None),
@@ -82,8 +82,8 @@ impl<'q> AnyArguments<'q> {
AnyValueKind::BigInt(i) => out.add(i),
AnyValueKind::Real(r) => out.add(r),
AnyValueKind::Double(d) => out.add(d),
- AnyValueKind::Text(t) => out.add(&**t),
- AnyValueKind::Blob(b) => out.add(&**b),
+ AnyValueKind::Text(t) => out.add(String::from(t)),
+ AnyValueKind::Blob(b) => out.add(Vec::from(b)),
}?
}
Ok(out)
diff --git a/sqlx-mysql/src/any.rs b/sqlx-mysql/src/any.rs
index 028b6c55b8..70b7ad4511 100644
--- a/sqlx-mysql/src/any.rs
+++ b/sqlx-mysql/src/any.rs
@@ -84,7 +84,7 @@ impl AnyConnectionBackend for MySqlConnection {
arguments: Option>,
) -> BoxStream<'q, sqlx_core::Result>> {
let persistent = persistent && arguments.is_some();
- let arguments = match arguments.as_ref().map(AnyArguments::convert_to).transpose() {
+ let arguments = match arguments.map(AnyArguments::convert_into).transpose() {
Ok(arguments) => arguments,
Err(error) => {
return stream::once(future::ready(Err(sqlx_core::Error::Encode(error)))).boxed()
@@ -111,8 +111,7 @@ impl AnyConnectionBackend for MySqlConnection {
) -> BoxFuture<'q, sqlx_core::Result