一、python操作mysql
1.安装
workon py3env
pip install pymysql
pip install redis
deactivate
# 进入mysql/redis配置文件
cd/etc/mysql/
cdmysql.conf.d/
sudovimmysqld.conf# 0.0.0.1为所有的都可以访问
2.连接要操作数据库,首先就要建立和数据库的连接,配置pymysql.connect连接数据库:
importpymysql
con=pymysql.connect(
host='主机',# 127.0.0.1
port=端口,# 3306
user='用户名',# xiaojiu
password='密码',
db='数据库名',# mudb
charset='utf8'
)
# print(con) # 测试是否连接
# ifconfig查看端口ip地址
# cmd中查看IP地址 ipconfig
# 定义游标
cursor=con.cursor()# 所有操作都是基于游标去做
cursor.execute('show databases')#执行sql
one=cursor.fetchone()#取出一条数据
all=cursor.fetchall()#取出所有数据
print(one)
print(all)
# 默认开启事务,需要提交才能修改成功
#特性:(原子性,一致性,隔离性,持久性)
# 插入
row=cursor.execute("insert into tb values(%s,%s)")
row=cursor.execute("insert into test(name,sex) values(%s,%s)", ('lucky','male'))
# 更新
row=cursor.execute("update test set name= '三花' where id = %s", (2,))
# 删除
cursor.execute('delete from user where id=%s ',(1,) )
# 关闭连接
con.commit()#提交事物
cursor.close()#关闭游标
con.close()#关闭连接
## 联合查询
union='''
select s.name, c.name,d.name from `student` s
left join `select` se on se.s_id = s.s_id
left join course c on se.c_id = c.id
left join department d on s.dept_id = d.id
ORDER BY s.name;
'''
# cursor.execute(union)
# find =cursor.fetchall()
二、python操作 redis
安装和连接
pip install redis
# 创建连接
re=redis.Redis(host='127.0.0.1',port='6379')
## 测试
re.set('num',15)
print(re.get('num').decode('utf-8'))# b默认二进制
## set 中文
re.set('name','张三')
print(re.get('name').decode('utf8') )
### 大部分的命令 和 redis 中操作一样
不同:
re.expire('use',20)
re.ttl('use')### 不能看 负数 -1 -2
re.mset('num'=1)## 用键值对
re.incr('read_count',1000)## incr 可以加参数,代替了 incrby 9999990000为0
re.decr()## decr 可以加参数,代替了 decrby
lpush list1233
re.lrem('list',3,0)## num 放到后面 原本:'list',3,0
re.hmset('use',{'name':'qw','age':18})# 多插入,用字典 原本用,隔开
三、事务
create table account(
id int,
money int
);
starttransaction;
insert into account value(1,1000)
select * from account;
commit;
# 否则rollback回滚失效
领取专属 10元无门槛券
私享最新 技术干货