(8)Python连接操作MySQL
pymysql模块下的方法
'''必须实例化对象才能建立连接'''
1、pymysql.connect #和MySQL建立连接
'''得由对象去调用定义游标'''
2、xxx.sursor() #获得游标
'''由游标去调用传入指令'''
3、xxx.execute(‘指令’) #传入指令
'''fetchall \fetchone必须赋值给变量才能打印,而且得由游标去调用'''
4、fetchall #查询所有 \ fetchone #查询一行
'''关闭时候必须关闭实例化的对象和游标两个'''
5、游标.close() \ 对象.close() #关闭游标
'''默认是自动开启事务,必须关闭才能生效指令,由对象调用关闭'''
6、xxx.commit #关闭事务
7、cursor.lastrowid #获取插入值的id号
PS:注意事项,增加的时候
1、单列单行添加的时候%s要加单引号,后面%传入的值是字符类型也要加单引号,后面传入值的%前没有‘,’逗号
2、添加多行多个值得时候一定要用executemany,并且%s不能有单引号,需要传入的值前面必须要有‘,’逗号,并且后面的多个值要以元组形式放入列表中
3、修改单行多列的时候后面%传入的值需要以元组形式传入,传入值的%前面不能有‘,’逗号,并且字符串类型要加单引号,整数类型不需要加单引号
4、添加多列单行值的时候,%s不能加单引号,后面传入的值也不需要%,直接以列表形式传入且列表中字符类型要加单引号,但是传入的值前一定要有‘,’逗号
Python连接MySQL进行查询
'''python要用到pymysql包去连接MySQL'''
import pymysql '''通过对象去实例化连接mysql,connect里面有几个参数(host=数据库的IP\本机就是localhost,user=用户名,password=密码,database=要连接的数据库名,port=端口默认3306\不填写也可以,chatset=数据库的编码格式,cursorclass=数据呈现的格式(pymysql.cursors.DictCursor列表内套字典的呈现格式))'''
conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor) '''获得游标'''
cursor = conn.cursor() '''执行sql语句'''
cursor.execute('select * from staff_info') #括号内就是传入命令 '''获得值'''
info = cursor.fetchall() #查询表内所有行数据cursor.fetchall,cursor.fetchall 查询别表内一行数据
print(info) '''关闭游标'''
cursor.close()
conn.close()
Python连接MySQL进行删除
import pymysql
conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor)
cursor = conn.cursor()
cursor.execute('delete from staff_info where id=%s'%1)
''' 默认开启事物的,所以执行完指令需要提交事物才能成功'''
conn.commit()
cursor.close()
conn.close()
PS:因为是默认开启事物的,所以在增删改的操作时候都要提交事物才能成功执行指令
Python连接MySQL进行添加
import pymysql conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor) cursor = conn.cursor() '''单列单行添加的时候%s要加单引号,后面%传入的值是字符类型也要加单引号'''
cursor.execute("insert into staff_info(name) values('%s')" % 'Carl_s') #指令内用%传入时要以字符串形式,否则报错 conn.commit() cursor.close()
conn.close()
Python连接MySQL进行添加多行多个数据
import pymysql conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor) cursor = conn.cursor() '''添加多行多个值得时候一定要用executemany,并且%s不能有单引号,并且后面的多个值要以元组形式放入列表中'''
cursor.executemany("insert into staff_info(name,dep_id) values(%s,%s)",[('xiaoli',3),('zhangzhang',4)]) conn.commit() cursor.close()
conn.close()
Python连接MySQL进行修改
import pymysql conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor) cursor = conn.cursor() '''修改单行多列的时候后面%传入的值需要以元组形式传入,并且字符串类型要加单引号,整数类型不需要加单引号'''
cursor.execute("update staff_info set name='%s',dep_id='%d' where id=13"%('zhangzhangbao',1)) conn.commit() cursor.close()
conn.close()
Python连接MySQL进行修改后获取id号
import pymysql conn = pymysql.connect(host='localhost',user='root',password='',database='company',port=3306,charset='utf8',cursorclass=pymysql.cursors.DictCursor) cursor = conn.cursor() '''添加多列单行值的时候,%s不能加单引号,后面传入的值也不需要&,直接以列表形式传入且列表中字符类型要加单引号'''
cursor.execute("insert into staff_info(name,dep_id) values(%s,%s)",['WZRY',3]) conn.commit() print(cursor.lastrowid) #查看插入数据的主键id cursor.close()
conn.close()
(8)Python连接操作MySQL的更多相关文章
- python 连接操作mysql数据库
开发数据库程序流程: 1.创建connection对象,获取cursor 2.使用cursor执行SQL 3.使用cursor获取数据.判断执行状态 4.提交事务 或者 回滚事务 import: 数据 ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- python 连接操作数据库(一)
一.下面我们所说的就是连接mysql的应用: 1.其实在python中连接操作mysql的模块有多个,在这里我只给大家演示pymysql这一个模块(其实我是感觉它比较好用而已): pymysql是第三 ...
- (转)Python中操作mysql的pymysql模块详解
原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...
- python数据库操作 - MySQL入门【转】
python数据库操作 - MySQL入门 python学院 2017-02-05 16:22 PyMySQL是Python中操作MySQL的模块,和之前使用的MySQLdb模块基本功能一致,PyMy ...
- python下操作mysql 之 pymsql
python下操作mysql 之 pymsql pymsql是Python中操作MySQL的模块, 下载安装: pip3 install pymysql 使用操作 1, 执行SQL #!/usr/ ...
- day06 python代码操作MySQL
day06 python代码操作MySQL 今日内容 python代码操作MySQL 基于python与MySQL实现用户注册登录 python操作MySQL python 胶水语言.调包侠(贬义词& ...
- Python MySQLdb模块连接操作mysql数据库实例_python
mysql是一个优秀的开源数据库,它现在的应用非常的广泛,因此很有必要简单的介绍一下用python操作mysql数据库的方法.python操作数据库需要安装一个第三方的模块,在http://mysql ...
- python 之操作mysql 数据库实例
对于python操作mysql 数据库,具体的步骤应为: 1. 连接上mysql host 端口号 数据库 账号 密码2. 建立游标3. 执行sql(注意,如果是update,insert,delet ...
随机推荐
- linux图形和命令界面切换
一.系统不在虚拟机中的情况 使用ctrl+alt+F1~6切换到命令行界面:ctrl+alt+F7切换到图形界面 二.系统在虚拟机中的情况 Ctrl+Alt+shift+F1~6切换到命令行界面:使用 ...
- sqlalchemy动态组合查询语句。
if filter_type == 1: search = and_(GameRoom.status ==1,or_( and_(GameRoom.white_user_id == user_id, ...
- List在遍历中删除t元素
法一:使用普通for循环遍历 注意: 1.从头开始循环,每次删除后 i 减一. 2.从尾开始循环. public class Main { public static voi ...
- mvc+struct1+struct2
转一篇写得很棒的文章:https://my.oschina.net/win199176/blog/208171?p=7&temp=1495894148424 1.基于web开发中最原始的jsp ...
- 第二篇 界面开发 (Android学习笔记)
第二篇 界面开发 第5章 探索界面UI元素 ●The Android View Class ●△Widget设计步骤 需要修改三个XML,以及一个class: 1)第一个xml是布局XML文件 ...
- powershell玩转litedb数据库-第二版
powershell可以玩nosql数据库吗?答案是肯定的.只要这个数据库兼容.net,就可以很容易地被powershell使用. 发文初衷:世界上几乎没有讲powershell调用nosql的帖子, ...
- Android开发 ---基本UI组件2:图像按钮、单选按钮监听、多选按钮监听、开关
Android开发 ---基本UI组件2 1.activity_main.xml 描述: 定义一个按钮 <?xml version="1.0" encoding=" ...
- ubuntu 更改hostname, hosts后没有办法执行sudo 问题
由于主机名有重复的情况,所有需要更改主机名,遇到几个问题,主机名更改,重启系统以后不能执行sudo,另外也不知道root用户名密码.这个时候陷入了死循环. 网上搜集的办法,都是用sudo 命令去更改, ...
- Kubernetes资源监控探索
搭建kubernetes集群,有一个默认的dashboard,但是这个dashboard比较简陋,不能将自定义展示.所以打算使用Grafana+Heapster+Influxdb构建一个一体化监控平台 ...
- Arduino 串口输出LM35温度
#include "stdlib.h" float temp = 0.0; float maxtemp = 0.0; float mintemp =100.0; // the se ...