Files
2025-10-13 18:34:48 +08:00

58 lines
1.8 KiB
C++
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#include "../../../common/data_mysql.hpp"
#include "../../../odb/user.hxx"
#include "user-odb.hxx"
#include <gflags/gflags.h>
DEFINE_bool(run_mode, false, "程序的运行模式false-调试; true-发布;");
DEFINE_string(log_file, "", "发布模式下,用于指定日志的输出文件");
DEFINE_int32(log_level, 0, "发布模式下,用于指定日志输出等级");
void insert(bite_im::UserTable &user) {
auto user1 = std::make_shared<bite_im::User>("uid1", "昵称1", "123456");
user.insert(user1);
auto user2 = std::make_shared<bite_im::User>("uid2", "15566667777");
user.insert(user2);
}
void update_by_id(bite_im::UserTable &user_tb) {
auto user = user_tb.select_by_id("uid1");
user->description("我是一个风一样的男子!!");
user_tb.update(user);
}
void update_by_phone(bite_im::UserTable &user_tb) {
auto user = user_tb.select_by_phone("15566667777");
user->password("22223333");
user_tb.update(user);
}
void update_by_nickname(bite_im::UserTable &user_tb) {
auto user = user_tb.select_by_nickname("uid2");
user->nickname("昵称2");
user_tb.update(user);
}
void select_users(bite_im::UserTable &user_tb) {
std::vector<std::string> id_list = {"uid1", "uid2"};
auto res = user_tb.select_multi_users(id_list);
for (auto user : res) {
std::cout << user.nickname() << std::endl;
}
}
int main(int argc, char *argv[])
{
google::ParseCommandLineFlags(&argc, &argv, true);
bite_im::init_logger(FLAGS_run_mode, FLAGS_log_file, FLAGS_log_level);
auto db = bite_im::ODBFactory::create("root", "123456", "127.0.0.1", "bite_im", "utf8", 0, 1);
bite_im::UserTable user(db);
//insert(user);
//update_by_id(user);
//update_by_phone(user);
//update_by_nickname(user);
select_users(user);
return 0;
}