• python基础六--操作数据库


    操作数据库模块:mysql的pymysql和redis的redis ,参考http://www.nnzhp.cn/blog/archives/402

    1、操作mysql

    import pymysql
    
    conn=pymysql.connect(host='192.168.160.3',user='root',port=3306,passwd='123456',db='hqtest',charset='utf8')   #建立数据库连接     #关键字传参
    
    couser=conn.cursor() #在连接上建立一个游标
    sql='insert into hq(username,password) value("hq","25906028d04ba0563447f41dccb3c4cf")'
    couser.execute(sql2)
    conn.commit()   #提交,insert、update、delete必须commit才能生效
    
    sql2='select * from hq'
    couser.execute(sql)
    print(couser.fetchall())  # 获取所有数据
    couser.scroll(1,mode='absolute')   #移动游标,绝对的
    print(couser.fetchone())   #每执行一次 获取一列数据
    couser.scroll(0,mode='relative')   #移动游标,相对的
    print(couser.fetchone())   #每执行一次 获取一列数据
    
    couser=conn.cursor(cursor=pymysql.cursors.DictCursor)  #指定字典类型cursor
    sql3='select * from hq'
    couser.execute(sql3)
    print(couser.fetchall())
    
    couser.close()   #关闭游标
    conn.close()   #关闭连接

    2、操作redis

    import redis,json
    
    r=redis.Redis(host='192.168.160.3',port=6379,db=0,password='123456')
    
    # redis里面存的都是字符串;redis里面获取到的数据都是bytes类型的
    
    # string类型的key
    r.set('name',[1,2,3,4])
    name = r.get('name')
    print(name.decode())# 要使用.decode方法给它转成字符串才能继续操作
    new_name = json.loads(name.decode())# list和字典
    print(type(new_name))
    r.setex('eee','hahaha',15)# 可以设置key的失效时间
    print(r.get('hahahaahahahasdfsdfsd'))# get不存在的key,就是返回None
    r.mset(nhy='hahahaha',eee_age=19999) # 批量添加,排量set值时候用
    r.delete('eee') # 删除某个key
    print(r.keys('*n*')) # 获取所有的key
    
    # 哈希类型的key
    r.hset('user_session','eee','sdfjksdjflksfsdfsdfsfs')
    r.hset('user_session','ooo','sdfjksdjflksfsdfsdfsfs')
    print(r.hget('user_session','eee'))# 获取指定name里面k的值
    print(r.hgetall('user_session'))# 获取哈希类型里面所有的值
    r.hdel('user_session','eee')#删除指定的key
    r.delete('user_session')#把整个key全删掉
    
    # 创建文件夹
    r.set('user:eee','haha') #创建文件添加string类型的key
    r.set('user:ooo','hehe')
    r.hset('session:qwert','www','12345')  #创建文件添加hash类型的key
  • 相关阅读:
    将数组扁平化并去除其中重复数据,最终得到一个升序且不重复的数组
    vue 设计一个倒计时秒杀的组件
    es6之三个点(...)扩展运算符
    es6之解构赋值
    es6之字符串添加的东西
    ES6系列之变量声明let const
    js对数组进行删除
    python学习
    泛型
    随笔
  • 原文地址:https://www.cnblogs.com/eeoo/p/7101161.html
Copyright © 2020-2023  润新知