Redis命令学习-Transaction(事务)

DISCARD

    ​DISCARD :取消事务,放弃执行事务块内的所有代码。如果在使用WATCH命令监视某个key,则取消监视,等同于UNWATCH。

    ​返回值:总是返回ok。    ​

    ​
    
    
    
    
  1. 127.0.0.1:6379> MULTI
  2. OK
  3. 127.0.0.1:6379> PING
  4. QUEUED
  5. 127.0.0.1:6379> SET greeting "hello"
  6. QUEUED
  7. 127.0.0.1:6379> DISCARD
  8. OK
  9. 127.0.0.1:6379> GET greeting
  10. (nil)

EXEC

    ​EXEC:执行所有事务块内的命令。

    ​返回值:事务块内所有命令的返回值,按命令执行的先后顺序执行。操作被打断时,返回nil。

    
    
    
    
  1. 127.0.0.1:6379> MULTI
  2. OK
  3. 127.0.0.1:6379> INCR user_id
  4. QUEUED
  5. 127.0.0.1:6379> INCR user_id
  6. QUEUED
  7. 127.0.0.1:6379> INCR user_id
  8. QUEUED
  9. 127.0.0.1:6379> INCR user_id
  10. QUEUED
  11. 127.0.0.1:6379> EXEC
  12. 1) (integer) 1
  13. 2) (integer) 2
  14. 3) (integer) 3
  15. 4) (integer) 4

MULTI

    ​MULTI :标记一个事务块的开始。最后由EXEC原子性的执行。

    ​返回值:总是返回OK。

UNWATCH

    ​UNWATCH:取消命令对所有key的监视。如果在WATCH命令之后,EXEC或DISCARD命令被执行的话,就不需要执行UNWATCH命令。

   
   
   
   
  1. 127.0.0.1:6379> UNWATCH
  2. OK
WATCH

    ​WATCH [key .. ]:监视一个或者多个key。如果在执行事务前,这些key被打断,那么事务执行失败。

    ​返回值:ok    ​    ​


    
    
    
    
  1. 127.0.0.1:6379> WATCH lock lock_times
  2. OK
  3. 127.0.0.1:6379> MULTI
  4. OK
  5. 127.0.0.1:6379> SET lock a
  6. QUEUED
  7. 127.0.0.1:6379> INCR lock_times
  8. QUEUED
  9. 127.0.0.1:6379> EXEC
  10. 1) OK
  11. 2) (integer) 1


    ​

你可能感兴趣的:(Redis命令学习-Transaction(事务))