使用Python操作MySQL数据库

准备

安装Python,打开命令提示符,我已经安装成功了

安装Mysql我也安装成功了

我在用户的86188下利用记事本写了一个.py的python代码,在命令提示符中运行

Python自带的集成式开发环境,在电脑搜索框直接IDEA你也会打开

一,建立连接

使用Python操作MySQL数据库之前,需要安装PyMySQL,它是Python中操作MYSQL的模块。在Windows操作系统的cmd中运行如下命令安装PyMySQL,注意不是在Python命令提示符后面,是在Windows下执行的

pip install PyMySQL

Mysql默认的端口号是3306,orcal是1521  这个需要知道

对于游标对象,代表数据库中的游标,用于指示抓取数据操作的上下文,主要是提供执行SQL语句,调用存储过程,获取查询结果等方法。

使用连接对象的cursor方法可以获取游标对象,游标对象的属性如下:

  • close() 关闭当前游标

  • execute()执行数据库操作,SQL语句或者数据库命令

import pymysql.cursors
connect=pymysql.Connect(host='localhost',port=3306,user='root',passwd='123456',db='school',charset='utf8'
)
cursor=connect.cursor()
cursor.execute("SELECT VERSION()")
version=cursor.fetchone()
print("Mysql的版本是:%s"%version)
connect.close()



二,创建表

# mysql2.py
import pymysql.cursors# 连接数据库
connect = pymysql.Connect(host='localhost',port=3306,user='root',  # 数据库用户名passwd='123456',  # 密码db='school',charset='utf8'
)# 获取游标
cursor = connect.cursor()# 如果表存在,则先删除
cursor.execute("DROP TABLE IF EXISTS student")# 设定SQL语句sql = """
create table student(sno char(5),sname char(10),ssex char(2),sage int);
"""# 执行SQL语句
cursor.execute(sql)# 关闭数据库连接
connect.close()

三,插入数据

# mysql3.py
import pymysql.cursors# 连接数据库
connect = pymysql.Connect(host='localhost',port=3306,user='root',  # 数据库用户名passwd='123456',  # 密码db='school',charset='utf8'
)# 获取游标
cursor = connect.cursor()# 插入数据
sql = "INSERT INTO student(sno,sname,ssex,sage) VALUES ('%s', '%s', '%s', %d)"
data1 = ('95001','鹿晗','男',21)
data2 = ('95002','李钟硕','女',20)
cursor.execute(sql % data1)
cursor.execute(sql % data2)
connect.commit()
print('成功插入数据')# 关闭数据库连接
connect.close()

四,修改数据

# mysql4.py
import pymysql.cursors# 连接数据库
connect = pymysql.Connect(host='localhost',port=3306,user='root',  # 数据库用户名passwd='123456',  # 密码db='school',charset='utf8'
)# 获取游标
cursor = connect.cursor()# 修改数据
sql = "UPDATE student SET sage = %d WHERE sno = '%s' "
data = (21, '95002')
cursor.execute(sql % data)
connect.commit()
print('成功修改数据')# 关闭数据库连接
connect.close()

五,查询数据

# mysql5.py
import pymysql.cursors# 连接数据库
connect = pymysql.Connect(host='localhost',port=3306,user='root',  # 数据库用户名passwd='123456',  # 密码db='school',charset='utf8'
)# 获取游标
cursor = connect.cursor()# 查询数据
sql = "SELECT sno,sname,ssex,sage FROM student WHERE sno = '%s' "
data = ('95001',)    #元组中只有一个元素的时候需要加一个逗号
cursor.execute(sql % data)
for row in cursor.fetchall():print("学号:%s\t姓名:%s\t性别:%s\t年龄:%d" % row)
print('共查找出', cursor.rowcount, '条数据')# 关闭数据库连接
connect.close()

六,删除数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/102106.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

colab使用(基础入门)——随手记

挂载到google drive 挂载目录/content/drive from google.colab import drive drive.mount(/content/drive) 图解colab读取Google Drive 文件 - 知乎 下载文件 !curl -L https://dl.fbaipublicfiles.com/imagebind/imagebind_huge.pth -o imagebind_ckpt参数:[-…

Nginx 学习(十)高可用中间件的配置与实现

一 Keepalived热备 1 概述 调度器出现单点故障,如何解决?Keepalived实现了高可用集群Keepalived最初是为LVS设计的,专门监控各服务器节点的状态Keepalived后来加入了VRRP功能,防止单点故障 2 运行原理 Keepalived检测每个服务器节点状…

Pytest系列-快速入门和基础讲解(1)

前言 目前有两种纯测试的测试框架,pytest和unittestunittest应该是广为人知,而且也是老框架了,很多人都用来做自动化,无论是UI还是接口pytest是基于unittest开发的另一款更高级更好用的单元测试框架 单元测试框架介绍 单元测试…

【智慧工地源码】物联网和传感器技术在智慧工地的应用

物联网(IoT)和传感器技术在智慧工地中扮演着至关重要的角色。这些技术的应用,使得智慧工地能够实现对施工过程的精确监控、数据收集和分析,以及设备互联,从而提高工程效率、减少成本并改善工人的工作环境。 一、物联网…

微信小程序navigateTo进入页面后返回原来的页面需要携带数据回来

需求 如图:点击评论后会通过wx.navigateTo进入到评论页面,评论完返回count给原页面,重新赋值实现数量动态变化,不然要刷新这个页面才会更新最新的评论数量。 实现方式: 在评论页面通过wx.setStorageSync(‘data’…

在Android和iOS上设置手机ip详细教程

大家好!今天我们将分享一个关于如何在Android和iOS设备上设置手机ip(Layer 2 Tunneling Protocol)的简易教程。如果你想要通过安全且可靠的方式连接到远程网络,那么跟着本文一起学习吧!无需复杂操作,让我们…

jmeter调试错误大全

一、前言 在使用jmeter做接口测试的过程中大家是不是经常会遇到很多问题,但是无从下手,不知道从哪里开始找起,对于初学者而言这是一个非常头痛的事情。这里结合笔者的经验,总结出以下方法。 二、通过查看运行日志调试问题 写好…

web端调用本地摄像头麦克风+WebRTC腾讯云,实现直播功能

目录 关于直播直播流程直播视频格式封装推流和拉流 获取摄像头和麦克风权限navigator.getUserMedia()MediaDevices.getUserMedia() WebRTC腾讯云快直播 关于直播 视频直播技术大全、直播架构、技术原理和实现思路方案整理 直播流程 视频采集端: 1、视频采集&#…

基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平教程

详情点击链接:基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平教程 一,空间数据获取与制图 1.1 软件安装与应用 1.2 空间数据 1.3海量空间数据下载 1.4 ArcGIS软…

337. 打家劫舍 III

337. 打家劫舍 III C代码:二叉树 动态规划 typedef struct { // 每个节点都有两个状态:选中、不选中int selected;int notSelected; } SubtreeStatus;SubtreeStatus dfs(struct TreeNode *node) {if (!node) {return (SubtreeStatus){0, 0};}SubtreeS…

【文末送书】全栈开发流程——后端连接数据源(二)

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄&#xff…

Python之面向对象(一)

目录 面向对象为什么要面向对象?要素 定义一些特性内存空间实例的创建与初始化创建实例方法__new__初始化实例方法__init__ 类的继承多态新式类与经典类 面向对象 为什么要面向对象? 方便版本更新迭代,程序结构清晰明了 要素 类&#xff…