Compare commits

...

4 Commits

Author SHA1 Message Date
Jie
13396e0cab fix move function 2025-03-26 18:04:38 +08:00
Jie
d293180eb1 fix move operator= function 2025-03-26 17:50:15 +08:00
Jie
ea90ef1398 mysql_query return 0 when success 2024-12-26 15:01:51 +08:00
Jie
458e55868e Fix std::expected error 2024-12-26 14:34:37 +08:00

View File

@@ -78,15 +78,26 @@ public:
SqlConnection& operator=(const SqlConnection& other) = delete;
SqlConnection(SqlConnection&& other){
other.Close();
this->Connect(other.ip, other.port, other.username, other.password, other.database_name);
this->ip = std::move(other.ip);
this->port = std::move(other.port);
this->username = std::move(other.username);
this->password = std::move(other.password);
this->database_name = std::move(other.database_name);
this->mysql_client = other.mysql_client;
mysql_init(&(other.mysql_client));
}
SqlConnection& operator=(SqlConnection&& other){
if(this != &other){
auto temp = SqlConnection{};
temp.Connect(other.ip, other.port, other.username, other.password, other.database_name);
other.Close();
this->Close();
this->ip = std::move(other.ip);
this->port = std::move(other.port);
this->username = std::move(other.username);
this->password = std::move(other.password);
this->database_name = std::move(other.database_name);
this->mysql_client = other.mysql_client;
mysql_init(&other.mysql_client);
}
return *this;
}
@@ -153,9 +164,9 @@ public:
return std::unexpected(get_error_msg());
}
std::expected<bool> Execute(std::string_view command){
std::expected<bool, std::string_view> Execute(std::string_view command){
auto res = mysql_query(&mysql_client, command.data());
if(!res)
if(res)
return std::unexpected(get_error_msg());
return res;
}