NodeJS连接Redis实现增删改查

冷不防 2022-05-05 09:32 503阅读 0赞

redis的db库可以设置

  1. const redis = require('redis');
  2. const client = redis.createClient();
  3. song1={
  4. "rank": 1,
  5. "songname": "沙漠骆驼",
  6. "songplayurl": "https://www.xiami.com/song/xNdNB3df465",
  7. "songid": "1796001263",
  8. "singer": "展展与罗罗",
  9. "songurl": "http://www.xiami.com/widget/xml-single/uid/0/sid/1796001263",
  10. 'albumsongs':[{'songname':'123','songurl':'www.123'},{'songname':'123','songurl':'www.123'},{'songname':'123','songurl':'www.123'}]
  11. }
  12. song2={
  13. "rank": 10,
  14. "songname": "一百万个可能",
  15. "songplayurl": "https://www.xiami.com/song/8GsZTDe5093",
  16. "songid": "1773650237",
  17. "singer": "Christine Welch(克丽丝叮)",
  18. "songurl": "http://www.xiami.com/widget/xml-single/uid/0/sid/1773650237"
  19. }
  20. data=[]
  21. data2=[1,2,3,4,5,'a','b','c']
  22. data.push(JSON.stringify(song1))
  23. data.push(JSON.stringify(song2))
  24. console.log(data)
  25. console.log(data2)
  26. insertListInDB('test',data)
  27. insertListInDB('test2',data2)
  28. querylistdata('test')
  29. querylistdata('test2')
  30. getdbnamelist()
  31. deletelistdata('test')
  32. getdbnamelist()
  33. updatelist('test2',1,'test')
  34. //获取当前db中所有的key
  35. function getdbnamelist(){
  36. // 相当于命令(keys *), 返回list,包含当前db所有key的名字
  37. client.keys('*',function(err,val){
  38. console.log(val);
  39. //callback(val);
  40. });
  41. }
  42. //添加list数据
  43. function insertListInDB(dbname,dbdata){
  44. client.lpush(dbname,dbdata, function (err) {
  45. if (err) {
  46. console.log(err);
  47. }else{
  48. console.log('insert[%d] 个数据 in db[%s] finished',dbdata.length,dbname);
  49. }
  50. });
  51. }
  52. //查询指定的key中,指定位置的内容
  53. function querylistdata(dbname){
  54. //0 为起始位置,-1为最后的位置
  55. client.lrange(dbname,0,-1,function(err,val){
  56. if(err){
  57. console.log(err);
  58. } else{
  59. console.log('read data from DB success. data length=[%d]',val.length);
  60. console.log(val)
  61. }
  62. });
  63. }
  64. //删除
  65. function deletelistdata(dbname){
  66. //保留指定位置的内容,其他全部删除,所以从0到-1就是一个不删; 从-1到0就是数据全部删除,相当于del key
  67. client.ltrim(dbname,-1,0,function(err,val){
  68. console.log('delet all data in db[%s] ,finished val=[%s] ',dbname,val);
  69. });
  70. }
  71. //更新指定位置内容
  72. function updatelist(dbname,dbdataindex,newinfo){
  73. client.lset(dbname,dbdataindex,newinfo,function(err,val){
  74. console.log('update dbdataindex[%s] data.length=[%s],dbname=【%s】 finished val=[%s] ',dbdataindex,newinfo.length,dbname,val);
  75. });
  76. }

发表评论

表情:
评论列表 (有 0 条评论,503人围观)

还没有评论,来说两句吧...

相关阅读

    相关 nodejs+express+mysql 增删

    写在最前面的话:         鉴于评论区的问题有点超出自己的想象,故重拾express,从头开始重新敲了一遍基于express的增删改查,希望大家有疑问先点击[这里][L