pymysql 增
1、重点:数据库插入数据需要进行---------事物提交
其它:事物回滚
- import pymysql
- # 注册用户
- print("=========注册用户===========")
- username = input("请输入用户名:")
- pwd = input("请输入密码:")
- # 连接数据库
- conn = pymysql.connect(
- host='localhost',
- port=3306,
- user='root',
- password='@WSX3edc',
- database='userinfo',
- charset='utf8'
- )
- # 获取光标
- cursor = conn.cursor()
- sql = "insert into info(name, password) value (%s, %s);"
- try:
- cursor.execute(sql, [username, pwd])
- conn.commit() # 添加数据,需要进行事物提交
- except Exception as e:
- print(e)
- conn.rollback() # 事物回滚
- cursor.close()
- conn.close()
2、注意:lastrowid是 光标的一个属性
- import pymysql
- # 连接数据库
- conn = pymysql.connect(
- host='localhost',
- port=3306,
- user='root',
- password='@WSX3edc',
- database='userinfo',
- charset='utf8'
- )
- cursor = conn.cursor()
- sql1 = "insert into class(title) value (%s);"
- sql2 = "insert into student(name, cid) value (%s, %s);"
- try:
- cursor.execute(sql1, "E班")
- curr_cid = cursor.lastrowid # 获取光表最后的row id
- cursor.execute(sql2, ['wt', curr_cid])
- conn.commit() # 事物提交
- except Exception as e:
- print(e)
- conn.rollback() # 事物回滚
- cursor.close()
- conn.close()
3、批量添加数据
注意:批量添加的数据类型
- import pymysql
- # 连接数据库
- conn = pymysql.connect(
- host='localhost',
- port=3306,
- user='root',
- password='@WSX3edc',
- database='userinfo',
- charset='utf8'
- )
- cursor = conn.cursor()
- sql = "insert into info(name, password) value (%s, %s);"
- data = [('a', 1), ('b', 2), ('c', 3)]
- try:
- cursor.executemany(sql, data) # 批量添加
- conn.commit()
- except Exception as e:
- print(e)
- conn.rollback()
- cursor.close()
- conn.close()
pymysql 增的更多相关文章
- pymysql 增删改 查 索引
pymysql 模块的使用 pip install pymysql username = input ("请输入用户") pwd = input ("请输入密码" ...
- Python pymysql 增删改查封装
关于pymysql 的增删改查,简单做个封装,方便后面使用直接拿来调用即可. 其中 增删改 的处理其实是一致的,本可以使用统一的方法,但是为了明显区分,这里分开来写了. 直接看代码就即可,如下: # ...
- pymysql增删改查
#!/usr/bin/env python # encoding: utf-8 # Date: 2018/6/24 # 1.增删改import pymysql conn = pymysql.conn ...
- pymysql增删改查操作
表结构 CREATE TABLE `students` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFA ...
- pymysql的增删改查、索引
1.pymysql增删改 一定要有commit() import pymysql username = input("请输入用户名:") pwd = input("请输入 ...
- MySQL— pymysql模块(防止sql注入),可视化软件Navicat
一.Pymysql import pymysql #python2.X 中是 mysqldb 和 pythonmysql 用法是一模一样的 #pymysql可以伪装成上面这两个模块 user = in ...
- 多表查询、可视化工具、pymysql模块
create table dep( id int primary key auto_increment, name varchar(16), work varchar(16) ); create ta ...
- PyMysql复习
参考:http://www.cnblogs.com/liwenzhou/p/8032238.html 使用pycharm操作数据库. 填一个数据库名,User:填root 填写要连接的数据库. 建表. ...
- pymysql与mysql各功能
pymysql # 增删改操作 import pymysql client=pymysql.connect( host='127.0.0.1', port=3306, user='root', pas ...
随机推荐
- Redis - 命令行工具
使用Redis内置的命令行工具 redis-cli一些便捷的命令: 1.执行单条命令 平时在访问 Redis 服务器,一般都会使用 redis-cli 进入交互模式,然后一问一答来读写服务器,这种情况 ...
- H3C调试信息输出的例子
- get_free_page 和其友
如果一个模块需要分配大块的内存, 它常常最好是使用一个面向页的技术. 请求整个页也 有其他的优点, 这个在 15 章介绍. 为分配页, 下列函数可用: get_zeroed_page(unsigned ...
- ZR10.1青岛集训三地联考
ZR10.1青岛集训三地联考 谢谢dijk和smy A 题目大意: 已知斐波那契数列\(f\) 设 \[ F_i = \sum_{i = 0}^nf_if_{n - i} \] 求 \[ \sum_{ ...
- Scala中 下划线的用处
From: http://congli.iteye.com/blog/2169401 1.作为“通配符”,类似Java中的*.如import scala.math._ 2.:_*作为一个整体,告诉 ...
- CF1169(div2)题解报告
CF1169(div2)题解报告 A 不管 B 首先可以证明,如果存在解 其中必定有一个数的出现次数大于等于\(\frac{m}{2}\) 暴力枚举所有出现次数大于等于$\frac{m}{2} $的数 ...
- dotnet core 使用 PowerShell 脚本
本文告诉大家如何在 dotnet core 通过 Host PowerShell 的方法使用 PowerShell 脚本 本文提供的方法需要在 dotnet core 2.1 和以上的版本,对于 do ...
- c++ list的坑
std::list为空时调用pop_front的访问越界问题 std::list为空时调用pop_back访问越界问题 所以在使用pop_front . pop_back要先判断list是否为空 st ...
- 什么时候用for循环什么时候用while循环?
简述 for循环和while循环最大的区别在于[循环的工作量是否确定],for循环就像空房间依次办理业务,直到把[所有工作做完]才下班.但while循环就像哨卡放行,[满足条件就一直工作],直到不满足 ...
- react-native-vector-icons 安装、使用
react-native-vector-icons 安装.使用 前言 任何库的安装与使用都离不开官文,按照官方文档一步步操作可以规避大多数问题.不过很多库只有英文文档,想要完全参透需要时间.react ...