Python 中操作 MySQL 步骤

1.引入模块

  • 在py文件中引入pymysql模块
from pymysql import *

2.Connection 对象

  • 用于建立与数据库的连接

  • 创建对象:调用connect()方法

conn=connect(参数列表)
  • 参数host:连接的mysql主机,如果本机是'localhost'
  • 参数port:连接的mysql主机的端口,默认是3306
  • 参数database:数据库的名称
  • 参数user:连接的用户名
  • 参数password:连接的密码
  • 参数charset:通信采用的编码方式,推荐使用utf8

对象的方法

  • close()关闭连接
  • commit()提交
  • rollback()回滚
  • cursor()返回Cursor对象,用于执行sql语句并获得结果

3.Cursor对象

  • 用于执行sql语句,使用频度最高的语句为select、insert、update、delete
  • 获取Cursor对象:调用Connection对象的cursor()方法
cs1=conn.cursor()

对象的方法

  • close()关闭
  • execute(operation [, parameters ])执行语句,返回受影响的行数,主要用于执行insert、update、delete语句,也可以执行create、alter、drop等语句
  • fetchone()执行查询语句时,获取查询结果集的第一个行数据,返回一个元组
  • fetchall()执行查询时,获取结果集的所有行,一行构成一个元组,再将这些元组装入一个元组返回

对象的属性

  • rowcount只读属性,表示最近一次execute()执行后受影响的行数
  • connection获得当前连接对象

增删改

  • 创建test_insert.py文件,向学生表中插入一条数据
#encoding=utf-8
from pymysql import *if __name__=='__main__':try:#创建Connection连接conn=connect(host='localhost',port=3306,database='test1',user='root',password='mysql',charset='utf8')#获得Cursor对象cs1=conn.cursor()#执行insert语句,并返回受影响的行数:添加一条学生数据# 增加count=cs1.execute('insert into students(name) values("张良")')# 更新count=cs1.execute('update students set name="刘邦" where id=6')# 删除count=cs1.execute('delete from students where id=6')#打印受影响的行数print count#关闭Cursor对象cs1.close()#提交之前的操作,此处为insert操作conn.commit()except Exception,e:print efinally:#关闭Connection对象conn.close()

查询一行数据

  • 创建test_one.py文件,查询一条学生信息
#coding=utf-8
from pymysql import *if __name__=='__main__':try:#创建Connection连接conn=connect(host='localhost',port=3306,user='root',password='mysql',database='python1',charset='utf8')#获得Cursor对象cs1=conn.cursor()#执行select语句,并返回受影响的行数:查询一条学生数据count=cs1.execute('select id,name from students where id=7')#打印受影响的行数print count#获取查询的结果result = cs1.fetchone()#打印查询的结果print result#关闭Cursor对象cs1.close()except Exception as e:print efinally:#关闭Connection对象conn.close()

查询多行数据

  • 创建test_many.py文件,查询所有学生信息
#coding=utf-8
from pymysql import *if __name__=='main':try:#创建Connection连接conn=connect(host='localhost',port=3306,user='root',password='mysql',database='python1',charset='utf8')#获得Cursor对象cs1=conn.cursor()#执行select语句,并返回受影响的行数:查询所有学生数据count=cs1.execute('select id,name from students')#打印受影响的行数print count#获取查询的结果result = cs1.fetchall()#打印查询的结果print result#关闭Cursor对象cs1.close()except Exception as e:print efinally:#关闭Connection对象conn.close()

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

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

相关文章

nacos配置中心配置已经常见错误总结

💻目录 前言1、基础架构2、依赖3、配置文件3.1、bolg-product配置文件3.1.1、application.yml配置文件3.1.2、bootstrap.yml配置文件3.1.3、nacos远程配置 3.2、bolg-system3.1.1、application.yml配置文件3.1.2、bootstrap.yml配置文件3.2.3、nacos远程配置 4、测试…

Hive解题思路

Hive解题思路 1 相关知识讲解 1.1 HQL语句的语法 sql语句的语法: select ..... from .... join ..... where .....group by ... having...order by|sort by|cluster by|distribute by .... (1)group by:按照某些字段的值进行…

3.Redis与python交互

#导入模块、包 from redis import* if __name__"__main__": try: #1.创建StrictRedis对象,与redis服务器建立连接 srStrictRedis() #2、redis正常操作 #添加键py1,值为gj resultsr.set(py1,gj) #输出响…

tcl/tk demo

环境及版本说明: OSX10.9 tclsh -> tclsh8.5 wish -> wish8.5 查看本机运行环境: 1 which wish; 2 /usr/bin/wish 1 which tclsh; 2 /usr/bin/tclsh Demo功能说明: 用户登录窗口,输入用户名,密码.与文件中存储内容校验,如果相等,则提示"登录成功",否则提示&qu…

Hive高级操作

Hive高级操作 1 Hive的数据类型 1.1 原子数据类型 (1)Hive 是用 Java 开发的,Hive 里的基本数据类型和 java 的基本数据类型也是一一对应的, 除了 String 类型。 (2)有符号的整数类型:TINYIN…

05.序列模型 W2.自然语言处理与词嵌入(作业:词向量+Emoji表情生成)

文章目录作业1:1. 余弦相似度2. 单词类比3. 词向量纠偏3.1 消除对非性别词语的偏见3.2 性别词的均衡算法作业2:Emojify表情生成1. Baseline model: Emojifier-V11.1 数据集1.2 模型预览1.3 实现 Emojifier-V11.4 在训练集上测试2. Emojifier-V2: Using L…

4.搭建主从

一个master可以拥有多个slave,一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构 比如,将ip为192.168.1.10的机器作为主服务器,将ip为192.168.1.11的机器作为从服务器 说明:ip可以换为…

android中给TextView或者Button的文字添加阴影效果

参考: http://blog.csdn.net/hahahacff/article/details/8653171 总结: 可以在代码中实现也可以在xml中实现; XML如下: android:shadowColor"color/black" android:shadowDx"0" android:shadowDy"1"…

LeetCode 688. “马”在棋盘上的概率(DP)

文章目录1. 题目2. 解题1. 题目 已知一个 NxN 的国际象棋棋盘,棋盘的行号和列号都是从 0 开始。即最左上角的格子记为 (0, 0),最右下角的记为 (N-1, N-1)。 现有一个 “马”(也译作 “骑士”)位于 (r, c) ,并打算进行…

5.搭建集群

1.配置机器1 在演示中,192.168.12.107为当前ubuntu机器的ip 在192.168.12.107上进入Desktop目录,创建redis目录 在redis目录下创建文件7000.conf,编辑内容如下 port 7000 bind 192.168.12.107 daemonize yes pidfile 7000.pid cluster-enabl…

知识管理系统

一 :概述知识管理中, 一般是设定学习目标, 有针对性的收集材料,然后学习更有效;另外如见到以前总结过的内容, 并对自己有启发的也可以保存, 以修改以前写过的文章;而学习目标是什么&…

LeetCode 第 36 场双周赛(304/2204,前13.8%)

文章目录1. 比赛结果2. 题目1. LeetCode 5515. 设计停车系统 easy2. LeetCode 5516. 警告一小时内使用相同员工卡大于等于三次的人 medium3. LeetCode 5518. 给定行和列的和求可行矩阵 medium4. LeetCode 5517. 找到处理最多请求的服务器 hard1. 比赛结果 做出来3题&#xff0…

数据库实例:用户注册

1.根据结构创建表的脚本如下 createtable py_users( id int unsigned auto_increment not null primary key, uname varchar(20) not null, upwd char(40) not null, is_delete bit not null default 0 ); 如下流程图,接下来的代码就按照这个逻辑来写 2.创建user…

android 应用在启动后进行全局的的初始化操作

例如对于Volley的使用: 1:定义一个类使其继承Application package com.wzh.app;import com.wzh.volley.WzhVolley; import android.app.Application; import android.util.Log;public class WzhShshtApp extends Application{Overridepublic void onCrea…

HBase原理

目录 HBase原理 1 HBase架构 2 HBase中的核心概念 3 HBase的存储机制 4 HBase的寻址机制 5 HBase的读写流程 6 HBase的设计 7 HBase和Hive的整合 HBase原理 1 HBase架构 HBase的架构为主从架构,HMaster为主节点,HRegionServer为从节点 &#x…

数据库实例:用户登录

如下遍流程图,接下来的代码就按照这个逻辑来写 创建user_login.py文件,代码如下 #codingutf-8 from MySQLdb import* from hashlib importsha1 if __name____main__: try: #接收输入用户名、密码 unameraw_input(请输入用户名&…

javascript自定义startWith()和endWith()方法

一、采用正则表达式实现startWith、endWith效果函数 String.prototype.startWithfunction(str){ var regnew RegExp("^"str); return reg.test(this); } //测试ok,直接使用str.endWith("abc")方式调用即可String.prototyp…

数据库实例:mysql与mongo结合用户登录

加入mongodb后登录逻辑如下图,将图中nosql的位置换为mongodb即可 用户数据存储的集合名称为py_users,文档格式为{uname:用户名,upwd:密码} 将原来MySQL操作的代码封装到一个方法中,代码如下 def mysql_login(): #mongodb中没有则到mysql中…

LeetCode 1609. 奇偶树(层序遍历)

文章目录1. 题目2. 解题1. 题目 如果一棵二叉树满足下述几个条件,则可以称为 奇偶树 : 二叉树根节点所在层下标为 0 ,根的子节点所在层下标为 1 ,根的孙节点所在层下标为 2 ,依此类推。偶数下标 层上的所有节点的值都…

关于怀旧

每次换季都正好对个人资产进行更新换代的时候,上一年收拾东西的心情还依然记得,只是今年更加伤感。 上一年的我,爱情甜蜜,生活丰富,实验室项目也开展得十分顺利,整理东西时每打开一个箱子,就惊叹…