From 72af90041a94e9806819255254b2d093d2a2a72d Mon Sep 17 00:00:00 2001
From: znone <glyc@sina.com.cn>
Date: Fri, 01 Dec 2017 07:50:16 +0000
Subject: [PATCH] 修正在某些情况下不能绑定字段到左值的问题。
---
include/qtl_common.hpp | 12 ++++++++++--
include/qtl_mysql.hpp | 4 ++--
2 files changed, 12 insertions(+), 4 deletions(-)
diff --git a/include/qtl_common.hpp b/include/qtl_common.hpp
index 5015d9c..6966a07 100644
--- a/include/qtl_common.hpp
+++ b/include/qtl_common.hpp
@@ -14,6 +14,8 @@
#include <type_traits>
#include <tuple>
#include <memory>
+#include <string>
+#include <vector>
#include <functional>
#include "apply_tuple.h"
@@ -98,6 +100,12 @@
inline void bind_param(Command& command, size_t index, const T& param)
{
command.bind_param(index, param);
+}
+
+template<typename Command, typename T>
+inline void bind_field(Command& command, size_t index, T& value)
+{
+ bind_field(command, index, std::forward<T>(value));
}
template<typename Command, typename T>
@@ -490,7 +498,7 @@
{
inline void operator()(Command& command, T&& value) const
{
- bind_field(command, 0, std::forward<T>(value));
+ bind_field(command, 0, std::forward<typename std::remove_reference<T>::type>(value));
}
};
@@ -671,7 +679,7 @@
}
template<typename Params>
- uint64_t insert_direct(const std::string& query_text, const Params& params)
+ uint64_t insert(const std::string& query_text, const Params& params)
{
return insert(query_text.data(), query_text.length(), params);
}
diff --git a/include/qtl_mysql.hpp b/include/qtl_mysql.hpp
index 198b82f..c853a32 100644
--- a/include/qtl_mysql.hpp
+++ b/include/qtl_mysql.hpp
@@ -558,8 +558,8 @@
m_mysql=src.m_mysql;
src.m_mysql=NULL;
}
- database& operator==(const database&) = delete;
- database& operator==(database&& src)
+ database& operator=(const database&) = delete;
+ database& operator=(database&& src)
{
if(this!=&src)
{
--
Gitblit v1.9.3