Рабочая сборка с третьей ручкой

This commit is contained in:
Антон
2025-09-28 11:05:19 +03:00
parent ca3558be29
commit c72c0c5299
+14 -14
View File
@@ -22,32 +22,33 @@ string MySQLUserDAO::Create(const user& created_user)
const string sql_script = const string sql_script =
"INSERT INTO `up_and_down`.`users` (`uuid`, `login`, `hashed_password`) VALUES ('" "INSERT INTO `up_and_down`.`users` (`uuid`, `login`, `hashed_password`) VALUES (?, ?, ?);"s;
+ uuid_str + "', '" + created_user.login + "', '" + created_user.hashed_password + "');"s;
session_.sql(sql_script).execute(); session_.
sql(sql_script)
.bind(uuid_str, created_user.login, created_user.hashed_password).execute();
return uuid_str; return uuid_str;
} }
optional<user> MySQLUserDAO::GetByUUID(const string& uuid) optional<user> MySQLUserDAO::GetByUUID(const string& uuid)
{ {
const string sql_script = "SELECT * FROM `up_and_down`.`users`"s + const string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (uuid = ?) LIMIT 1;"s;
"WHERE (uuid = '"s + uuid +
"') LIMIT 1;"s;
mysqlx::SqlResult sql_result = session_. mysqlx::SqlResult sql_result = session_.
sql(sql_script).execute(); sql(sql_script)
.bind(uuid)
.execute();
return GetSingleUserBySQLResult(std::move(sql_result)); return GetSingleUserBySQLResult(std::move(sql_result));
} }
optional<user> MySQLUserDAO::GetByLogin(const string& login) optional<user> MySQLUserDAO::GetByLogin(const string& login)
{ {
const std::string sql_script = "SELECT * FROM `up_and_down`.`users`"s + const std::string sql_script = "SELECT * FROM `up_and_down`.`users` WHERE (login = ?) LIMIT 1;"s;
" WHERE (login = '"s + login
+ "') LIMIT 1;"s;
mysqlx::SqlResult sql_result = session_. mysqlx::SqlResult sql_result = session_.
sql(sql_script).execute(); sql(sql_script)
.bind(login)
.execute();
return GetSingleUserBySQLResult(std::move(sql_result)); return GetSingleUserBySQLResult(std::move(sql_result));
} }
@@ -55,9 +56,8 @@ optional<user> MySQLUserDAO::GetByLogin(const string& login)
pair<bool, vector<user>> MySQLUserDAO::GetAll(size_t limit, size_t offset) pair<bool, vector<user>> MySQLUserDAO::GetAll(size_t limit, size_t offset)
{ {
mysqlx::SqlResult sql_result = session_ mysqlx::SqlResult sql_result = session_
.sql("SELECT * FROM `up_and_down`.`users` "s + .sql("SELECT * FROM `up_and_down`.`users` LIMIT ? OFFSET ?;"s)
"LIMIT "s + to_string(limit + 1) + .bind(limit, offset)
" OFFSET "s + to_string(offset) + ";"s)
.execute(); .execute();
list<mysqlx::Row> rows = sql_result.fetchAll(); list<mysqlx::Row> rows = sql_result.fetchAll();
pair<bool, vector<user>> ret; pair<bool, vector<user>> ret;