(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 ...
随机推荐
- Win10系列:UWP界面布局基础9
在XAML中,样式.模板.画笔和动画等都被看做是资源,它们最终的作用都是相同的,就是让设计人员可以使用这些资源创建更好的视觉效果,对其设计的产品外观进行标准化统一,那么如何使用这些资源并组织和重用呢, ...
- java输入一个字符串,输出该字符串的所有的排序
public class Sort { public static void arrangeSequence(char[] strArr,int i){ char temp; ArrayList< ...
- Mysql数据库操作语句总结
简单复习下: 增insert into -- 删 delete from -- 改 update table名字 set -- 查 select * from -- 一.SQL定义 SQL(Str ...
- 自定义AXI-IP核(转)
目的: 自定义一个IP核,通过AXI总线与ARM系统连接 环境: Win7 32bit Vivado2014.4.1 Xilinx sdk2014.4 开发板: Zc702 第一步: 新建一个自定义的 ...
- swiper 支持性
Swiper3 是一款免费以及轻量级的移动设备触控滑块的js框架,使用硬件加速过渡(如果该设备支持的话).主要使用于移动端的网站.移动web apps,native apps和hybrid apps. ...
- MVC扩展之HtmlHelper辅助方法
1.什么是HtmlHelper辅助方法?其实就是HtmlHelper类的扩展方法,如下所示: namespace System.Web.Mvc.Html { public static class F ...
- 手机号的 AES/CBC/PKCS7Padding 加解密
前言:接口中上次的手机号码和密码是传入的加密的,模拟自动化的时候也需要先对数据进行加密 1.各种语言实现 网上已经各种语言实现好的AES加密,可以点击查看:http://outofmemory.cn/ ...
- MongoDB的安装及安装为windows服务
首先在网上找了一篇教程,于是按着做,下载了最新版的安装包,解压以后目录是这样的: 没有bin目录啊 原因:zip没有经过编译 于是下载安装包,安装包是msi 一直按照next提示就可以了,但是记得选择 ...
- vue优势
Vue.js是一个轻巧.高性能.可组件化的MVVM库,同时拥有非常容易上手的API: 我们都知道单页面应用:页面切换快 ,首屏时间稍慢,SEO差 js 渲染 (多页面应用: 首屏时间快 ...
- JavaBean转化为Map,List<JavaBean>转化为List<Map>
/** * 将对象转化为map * * @param bean * @param <T> * @return */ private <T> Map<String, Obj ...