mysql排序空放后面_python对mysql数据库的增删改查
PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。
1.PyMySQL的安装
PS G:\book> pip install pymysql
Collecting pymysql
Downloading https://files.pythonhosted.org/packages/ed/39/15045ae46f2a123019aa968dfcba0396c161c20f855f11dea6796bcaae95/PyMySQL-0.9.3-py2.py3-none-any.whl (47kB)
100% |████████████████████████████████| 51kB 17kB/s
Installing collected packages: pymysql
Successfully installed pymysql-0.9.3
2.使用python操作数据库的流程
3.各个对象的介绍
导入import pymysql后,使用pymysql.connect函数就可以连接数据库了。
pymysql.connect()参数说明:
conn=pymysql.connect(host='127.0.0.1',user='root',passwd='123456',db='test',port=3306)
还可以简写为这样:
conn=pymysql.connect('127.0.0.1','root','123456','test',3306)
打开数据库链接后,返回一个connection对象。
connection对象支持的方法,如下表所示:
通过connection对象的cursor方法,返回一个cursor游标对象,
cursor对象支持的方法,如下表所示:
4. 连接数据库
import pymysql
#数据库连接,返回数据库连接对象
conn=pymysql.connect(host='47.92.1.240',user='root',passwd='Hl123$%^',db='etc',port=3306)
#conn=pymysql.connect('47.92.1.240','root','Hl123$%^','etc',3306)
cur=conn.cursor()
5.创建数据表
sql='''
create table test(id int not null auto_increment primary key,username varchar(50),password varchar(50))
'''
cur.execute(sql)
注意:这段代码是创建一个表,一般可以通过可视化界面进行创建。
6.插入数据
插入test表中数据,该表有两个字段,可以使用占位符%s,可以有效避免sql注入问题。参数通过元组插入。
insertsql='''
insert into test(username,password) values (%s,%s)
'''
cur.execute(insertsql,('admin','123456'))
还可以executemany实现批量插入,比起循环插入效率要高。
insertmanysql='''
insert into test(username,password) values (%s,%s)
'''
cur.executemany(insertmanysql,[('zhangsan','123456'),('master','123456')])
上述方式无论插入单条数据还是多条数据都不会立即生效,需要进行事务提交。
conn.commit()
如果出现异常,可以使用事务回滚操作
conn.rollback()
7.查询数据
游标对象提供了fetchall方法,获取全部数据。返回一个元组。
Fetchone方法,获取其中的一个结果,返回一个元组。
cur.execute('select * from test')
rs=cur.fetchall()
for line in rs:
print(line)
(1, 'admin', '123456')
(2, 'zhangsan', '123456')
(3, 'master', '123456')
cur.execute('select * from test')
rs=cur.fetchone()
print(rs)
(1, 'admin', '123456')
7.更新数据
import pymysql
#数据库连接,返回数据库连接对象
conn=pymysql.connect('127.0.0.1','root','123456','etc',3306)
cur=conn.cursor()
try:
updatesql='update test set username=%s where id=%s'
cur.execute(updatesql,('manager',1))
conn.commit()
cur.execute('select * from test')
rs=cur.fetchall()
for line in rs:
print(line)
except:
conn.rollback()
conn.close()
(1, 'manager', '123456')
(2, 'zhangsan', '123456')
(3, 'master', '123456')
8.删除数据
import pymysql
#数据库连接,返回数据库连接对象
conn=pymysql.connect('47.92.1.240','root','Hl123$%^','etc',3306)
cur=conn.cursor()
try:
delsql='delete from test where id=%s'
cur.execute(delsql,(3,))
conn.commit()
cur.execute('select * from test')
rs=cur.fetchall()
print(rs)
except:
print("发生了错误")
conn.rollback()
conn.close()
((1, 'manager', '123456'), (2, 'zhangsan', '123456'))
可以看到,id=3的数据已经被删除。
mysql排序空放后面_python对mysql数据库的增删改查相关推荐
- hibernate mysql 例子_Hibernate的基本功能:对数据库的增删改查(创建对象实例)...
一.通过实例化的对象向数据库添加新记录 packagecom.yh.test;importorg.hibernate.Session;importorg.hibernate.SessionFactor ...
- python操作mysql数据库(增、删、改、查)_python对 MySQL 数据库进行增删改查的脚本...
# -*- coding: utf-8 -*- import pymysql import xlrd # import codecs #连接数据库 conn = pymysql.connect(hos ...
- MySQL学习总结(2) --- 数据表管理(增删改查)、使用DQL查询数据(SELECT)
MySQL学习总结(2) - 数据表管理(增删改查).使用DQL查询数据(SELECT) 1. 数据管理(增删改查) 数据库数据管理方法: a.通过SQLyog等管理工具管理数据库数据 b. 通过DM ...
- mysql增删改查要用事务吗_数据库的增删改查、事务与索引
数据库的增删改查.事务与索引 增删改查 一.查询(SELECT) 二.添加(INSERT) 三.删除(DELETE) 四.更改(UPDATE) 事务 一.事务的概念 二.MySQL数据库中操作事务命令 ...
- 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)...
最近看老罗的视频,跟着完成了利用Java操作MySQL数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- mysql封装 javabean,利用Java针对MySql封装的jdbc框架类JdbcUtils完整实现(包含增删改查、JavaBean反射原理,附源码)...
最近看老罗的视频,跟着完成了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- java mysql jdbc 封装_利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包括增删改查、JavaBean反射原理,附源代码)...
近期看老罗的视频,跟着完毕了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完毕对数据库的增删改查.当中查询这块,包含普通的查询和利用反射完毕的查询,主要包含以下几个函数接口 ...
- MySQL(1) 数据库的增删改查
MySQL(1) 数据库的增删改查 # 如果存在删除 drop database if exists kh69; # 创建数据库 create database kh69; # 进库 use kh69 ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)Shell脚本与MySQL数据库交互(增删改查)# 环境准备:安装mariadb 数据库 [root ...
最新文章
- material-ui_满足Material-UI —您最喜欢的新用户界面库
- 再测Golang的JSON库
- 基于Transformers入门自然语言处理!
- 如何让Window对话窗口重新获得输入焦点
- Tomcat - Tomcat的套娃式架构设计初探
- Flutter State 的生命周期
- Elasticsearch基本操作 1:ES 基本操作、批处理
- 简单实用读取字符串信息的c++类
- 阿里云成为国内首个时序数据库标准工作组成员
- pandas frame 删除一行_Pandas如何处理大规模数据?
- 25深入理解C指针之---传递数组
- Perl获取前后任意月份月末
- Java -- 定时任务实现方式
- 项目管理的五大过程组及十大知识领域
- Android申请相机权限
- vue 里面的slot属性
- DUTOJ-1013: 小q与面试题
- 解决 java double 减 int 型 产生的精度问题
- uni-app触发点击事件
- NIST指纹数据识别(二)数据处理
热门文章
- mmap直接操作底层,相当于驱动
- ubuntu下adb offline 的解决办法
- 7月10日王者荣耀服务器维护,王者荣耀7月10日更新维护公告 7.10全部更新内容汇总...
- vue中渲染对象中属性时显示未定义_揭开 vue 背后的秘密(1)
- centos 卸载docker_Spring Boot学习05_Docker卸载与安装
- java反射的运用_java反射的使用
- Unity iOS 使用 ASTC 格式纹理实践
- 崩坏3日记:戴尔超限专武天天出,我们的快乐变为刷题式重复养成
- 程序员数学基础【七、等比数列 棋盘麦粒】
- 零基础学Python-爬虫-3、利用CSS选择器爬取整篇网络小说