pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/effective-Cplusplus/cpp_redis

gin="anonymous" media="all" rel="stylesheet" href="https://github.githubassets.com/assets/repository-6534fbc3f5e83ac0.css" /> GitHub - effective-Cplusplus/cpp_redis: redis_client · GitHub
Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 

Repository files navigation

cpp_redis

介绍

  1. 基于boost.asio
  2. 支持string、list、set、hash、zset五种数据结构
  3. 支持事务提交
  4. 新增实现redis锁

说明

  1. 使用c++11以及以上编译(若c++11编译不过,请用c++14)

列子

#include <iostream>
#include <cppredis/client.hpp>
//string请求
cpp_redis::redis_client<cpp_redis::String> client;
bool falg = client.connect_to(IP地址,端口,redis密码);
int a = 0;
falg = client.set_db_num(a);
falg = client.setex("name", "yinpinghua", 30);
falg = client.set("name", "yinpinghua");
auto result = client.incr("name1");
auto result1 = client.decr("name1");
falg = client.delete_key("name1");
falg = client.is_key_exist("name1");
auto value =client.get_reflect_value("name");

falg = client.expire("name1",30);
falg = client.expire_at("name", 1587468798);
client.setex("name4", "112345", 60);

auto expire = client.remainder_ttl("name4");

std::string str1 = client.get_set_key("name","5678941");

client.substr_reflect_value("name", 0, 5);
auto vecs1 =client.multi_get_keys("name");
auto vecs2= client.multi_get_keys("name", "name1");
auto vecs3 = client.multi_get_keys("name", "name1", "name2");

client.multi_set_if_not_set("name", "1234", "name1", "456", "name3", "789","name4","562450");

client.multi_set_keys("name", "1234", "name1", "456", "name3", "789", "name4", "562450");
client.append_value("name4", "123456789");
client.set("name1234", "456789");
client.expire("name1234", 60);
//list请求
cpp_redis::redis_client<cpp_redis::List> client;
bool falg = client.connect_to(IP地址,端口,redis密码);
client.list_rpush("name2", "5678945");
client.list_lpush("name222", "5678945");

client.list_size("name2221234");
client.list_lpop("name222");
client.list_rpush("name22", "12");
client.list_rpush("name22", "4562145");
client.list_rpush("name22", "56");
client.list_rpush("name22", "78");

client.list_lpush("name22", "78");
client.list_lpush("name22", "56");
client.list_lpush("name22", "34");
client.list_lpush("name22", "12");
auto  reslut =client.list_rpoplpush("name22", "name");
client.list_rpush("name22", "78");
client.list_lpop("name22");

client.list_lpush_if("name22", "12");
client.list_del_elem("name22","56",-1);

auto res = client.list_insert_after("name", "98", "123456790");

auto res = client.list_brpoplpush("name","name2345",20);
auto err = client.get_current_error();

//set请求
cpp_redis::redis_client<cpp_redis::Set> client;
bool falg = client.connect_to(IP地址,端口,redis密码);
auto res = client.set_add("name", "1234", "5678","910245","78945");
auto res1 = client.set_delete_elem("name", "1234", "5678");
auto res = client.set_is_member("name", "78945");
auto res1 = client.set_rand_elem("name111",2);

auto res1 = client.set_move_elem("name", "name1", "7894511111");

auto res1 = client.set_get_size("name111");

auto res1 = client.set_sinter("name","name1");

auto res1 = client.set_union_store("name3","name","name2");

auto res12 = client.set_diff( "name", "name2");

auto res1 = client.set_diff_store("name4","name", "name1");

//Zset请求
cpp_redis::redis_client<cpp_redis::ZSet> client;
bool falg = client.connect_to(IP地址,端口,redis密码);

auto res = client.zset_add("name", 1, "12345", 2, 56);
std::string store = "yinpinghua";
auto res2 = client.zset_incrby("name",2,"yinpinghua");
std::string error = client.get_current_error();
int i = client.zset_count("name");
auto count = client.zset_range_counts("name", 1, 4);
auto res1 = client.zset_range("name", 1, 2,false);
auto res1 = client.zset_revrrank("name", 0, 1);

auto res1 = client.zset_range_score("name",0,1,false,true);

auto res1 = client.zset_revrange_score("name", 7, 0,true);

auto res1 = client.zset_rank("name","sp1");
auto res = client.zset_rank("name", "yinpinghua");
auto res1 = client.zset_revrank("name", "yinpinghua");

auto res1 = client.zset_rem("name", "yinpinghua","sp",1);

std::string str = "yinpinghua";
auto res1 = client.zset_add("name",1, &str[0], 2, "sp", 1.25, "shagua");

auto res = client.zset_remrangeby_rank("name", 1, 2);

auto res = client.zset_remrangebyscore("name", 1, 2);
std::string str = "yinpinghua";
auto res1 = client.zset_add("name", 1, &str[0], 2, "sp", 1.25, "shagua");

auto res = client.zset_rangebylex("name1","[1", "[3");
auto res = client.zset_lexcount("name1", "[1", "[3");

auto res = client.zset_remrangebylex("name1", "[1", "[3");
auto res = client.zset_union_store("name4", 2, cpp_redis::aggregate_mothod::agg_sum,0,1,"name", "name2");
auto res = client.zset_inter_store("name6", 2, cpp_redis::aggregate_mothod::agg_sum, 0, 1, "name", "name2";

//hash请求
cpp_redis::redis_client<cpp_redis::Hash> client;
bool falg = client.connect_to(IP地址,端口,redis密码);

auto res = client.hash_set("name", false, "123456");
auto  res = client.hash_setx("name", 12, "123456");

auto  res = client.hash_setx("name", 12, "123456");

auto res = client.hash_exists("name", false);

std::string field;
auto res = client.hash_get("name", 1);

auto res1 = client.hash_set("db", 123, "redis.com");
auto res = client.hash_del("name", false);

auto res = client.hash_len("db");

std::string key = "db";
std::string files = "123";

auto res = client.hash_strlen(std::move(key), files);

auto res = client.hash_incrby(std::move(key), files, 40);
auto res1 = client.hash_incrby(std::move(key), false, 40);

auto res112 = client.hash_incrby_float(std::move(key), 456, 1.22f);
float f = 1.23f;
auto res = client.hash_mset(std::move(key), "123456", 23, 4, 56, false, f);

auto res = client.hash_mget(std::move(key), 1, 4, false, 123456);
auto res = client.hash_keys(std::move(key));
auto res = client.hash_vals(std::move(key));

auto res = client.hash_get_all(std::move(key));

Releases

Packages

Contributors

Languages

pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy