一、操作mysql

首先,python3操作mysql.需要安装第三方模块pymysql,在python2中则使用的是pysqldb。这里使用pymysql.

直接使用pip install pymysql或python3 setup.py install安装。

1.1连接mysql

import pymysql
#数据库连接信息
host='127.0.0.1'
user='db'
password='' #密码只能是字符串
db='db'
port=3306#端口号只能写int类型
charset='utf8'#只能写utf8,不能写utf-8
conn = pymysql.connect(host=host,password=psassword,
user=user,db=db,port=port,
charset=charset,autocommit=True
)#建立连接
#autocommit=True往数据库写数据时,需要commit下,这个参数表示自动提交。
cur=conn.cursor#创建游标
sql='select * from app_users limit 5;'
cur.execute(sql)#只是执行sql语句,并不返回执行sql的结果
print(cur.fetchall())#执行上述mysql语句,把结果放到cur,通过fetchall将执行sql后的结果取出来,默认返回的是二维元组
print(cur.description())#获取这个表里所有字段的属性信息
cur.close()#关闭游标
conn.close()#关闭连接
#创建游标,操作设置为字典类型,返回结果为字典格式!不写默认是元组格式!
cur=conn.cursor(cursor=pymysql.cursors.DictCursor)
#接收数据有三种方式:
res = cursor.fetchone() #接收返回的第一行数据
ret = cursor.fetchmany(n) #接收返回的前n行数据,数组格式
req = cursor.fetchall() #接收返回的所有数据,数组格式
#获取最新的自增ID
new_id=cursor.lastrowid
print(new_id)
conn.rollback()#回滚当前游标的所有操作

1.2创建数据库表

import pymysql
host='127.0.0.1'
user='jxz'
password='' #密码只能是字符串
db='jxz'
port=3306#端口号只能写int类型
charset='utf8'#只能写utf8,不能写utf-8
conn = pymysql.connect(host=host,password=password,
user=user,db=db,port=port,
charset=charset,autocommit=True
)#建立连接
#autocommit=True往数据库写数据时,需要commit下,这个表示自动提交。
cur= conn.cursor() #建立游标
sql='create table LYH (username char(20),age int,sex char(20))'
cur.execute(sql)
print(cur.fetchall())
cur.close()
conn.close()

1.3插入数据

import pymysql
host='127.0.0.1'
user='jxz'
password='' #密码只能是字符串
db='jxz'
port=3306#端口号只能写int类型
charset='utf8'#只能写utf8,不能写utf-8
conn = pymysql.connect(host=host,password=password,
user=user,db=db,port=port,
charset=charset,autocommit=True
)#建立连接
#autocommit=True往数据库写数据时,需要commit下,这个表示自动提交。 cur= conn.cursor() #建立游标
sql='insert into LYH (username,age,sex) VALUES ("liuyihan",18,"女")'
cur.execute(sql)
cur.close()
conn.close()

二、操作redis

redis是一种nosql数据库,是一种高性能的key-value数据库。其特点有以下三个:

  • 数据可持久化地保存在磁盘中,重启时可再次加载使用
  • value可存储string,list,set,hash等数据结构
  • 支持master-slave数据备份

通过redis desktop manager连接工具,也操作redis数据库。具体方法如图:

通过python操作redis,首先安装redis模块。

import redis
import random
ip='127.0.0.1'
password='******'
r=redis.Redis(host=ip,password=password,port=6379,db=1)
#操作string类型的值
# res=r.get('liuyihan')
# print(res)
# s='ss'
# print(s.encode())#将字符串变成bytes类型,二进制类型
# print(res.decode())#将二进制类型转变成字符串类型
# r.flushdb()#清空所有表
# r.set('lyh','ftt',50)#50指定key50S后失效
# r.delete('gta')#删除指定的key
# r.setex('lyh','233',40)#40是指定value40S后失效
# token:lyh#冒号前的表示文件夹
r.set('message:lyh','excel,word')#冒号:前的是文件夹,冒号:后的是key,‘excel,word'是values
# print(r.keys())#获取数据库中的所有key,返回一个列表
#hash类型,二层字典
# token={'lyh':{'age':'18','firm':'DJ'}}
r.hset('Message','LYH',"Shenzen")
print(r.hget('jnz_stus','cm'))
# res=r.hgetall('jnz_stus')
# print(res)
# new={}
# for key,value in enumrate(res):
# new[key.decode()]=value.decode()
# print(new)

最新文章

  1. 数据库中char与varchar类型的区别
  2. Express4.x常用API(一):res
  3. InfoPath中用户数据类型结构解析
  4. YCbCr 编码格式(YUV)---转自Crazy Bingo的博客
  5. 在ASP.NET 5项目中使用和调试外部源代码包
  6. hihoCoder太阁最新面经算法竞赛17
  7. 【英语】Bingo口语笔记(50) - Drop系列
  8. 动态获取jar文件的路径
  9. Android WebView JavaScript交互
  10. Android Spinner使用简介
  11. HDU1963 && POJ2063:Investment(完全背包)
  12. JDBC的超时原理
  13. 使用MyEclipse生成实体类和Hibernate映射文件
  14. Appium python自动化测试系列之日志的收集(十二)
  15. Java finalize方法使用
  16. JavaScript常用代码书写规范
  17. logrotate日志处理
  18. linux下Flask框架搭建简单网页
  19. php签名认证
  20. ios 错误纪录

热门文章

  1. C++用libcurl通过HTTP以表单的方式Post数据到服务器
  2. UVA 558 SPFA 判断负环
  3. Spring Cloud服务间调用鉴权
  4. PAT Advanced 1154 Vertex Coloring (25) [set,hash]
  5. MySQL--INSERT INTO ... ON DUPLICATE KEY UPDATE ...
  6. vi——终端中的编辑器
  7. 一种循环buffer结构
  8. C# 扩张方法的语法
  9. 894A. QAQ#(暴力)
  10. windows10使用npm安装vue、vue-cli