1、所需资源:pycharm,python3.6,module:pymysql

2、pycharm配置mysql:

新添加一个mysql数据库

ip:192.168.112.54    端口:3306    账号:root   密码:123456

接下来,创建数据库表信息:(代码改编,来自网络)

/*1、创建表*/

DROP TABLE IF EXISTS mysql.Student;
create table Student
(
  Sno   ),
  Sname ),
  primary key (Sno)
)
  ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

DROP TABLE IF EXISTS mysql.Course;
create table Course
(
  Cno   ),
  Cname ),
  Tno   ),
  primary key (Cno)
)
  ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

DROP TABLE IF EXISTS mysql.SC;
create table SC
(
  Sno   ),
  Cno   ),
  score int,
  primary key (Sno, Cno)
)
  ENGINE = InnoDB
  DEFAULT CHARSET = utf8;

DROP TABLE IF EXISTS mysql.Teacher;
create table Teacher
(
  Tno   ),
  Tname ),
  primary key (Tno)
)
  ENGINE = InnoDB
  DEFAULT CHARSET = utf8;
/*2、插入表数据*/
', '陈一');
', '郭二');
', '张三');
', '李四');
', '王五');

', '张老师');
', '王老师');
', '钱老师');
', '刘老师');
', '胡老师');

');
');
');
');
');

);
);
);
);
);

);
);
);
);
);

);
);
);
);
);

);
);
);
);
);

);
);
);
);
);

/*运行sql文件出错,解决办法:使用Notepad++打开文件,选择 格式->无BOM的UTF8格式编码*/

/*2、单表查询_表数据*/
select * from Teacher;
select * from Student;
select * from Course;
select * from SC;
/*3、多表查询_表数据*/
select
  s.Sname as "学生",
  t.Tname  as "教师",
  c.Cname as "课程",
  sc.score as "分数"
from Student s, SC sc, Course c, Teacher t
where sc.Cno = c.Cno
      and sc.Sno = s.Sno
      and c.Tno = t.Tno
order by s.Sname,
  t.Tname,
  c.Cname,
  sc.score;

输出查询结果【部分截图】,能够正常显示,说明环境配置正常

紧接着:python代码去模拟手工操作数据库

# coding:utf-8
import pymysql
'''
新添加一个mysql数据库
ip:192.168.112.54    端口:3306    账号:root   密码:123456
'''
# 连接mysq数据库
connection = pymysql.connect(host='192.168.112.54',
                             port=3306,
                             user='root',
                             password=',
                             db='mysql',
                             charset='utf8',
                             cursorclass=pymysql.cursors.DictCursor)
# 实例化——创建数据库游标
cursor = connection.cursor()
# 使用execute方法执行SQL语句
id = '
i = cursor.execute("select * from Student s where s.Sno = %s" % id)
print("记录数:%d;" % i, "类型:", type(i))

# 使用 fetchone() 方法获取一条数据
data = cursor.fetchone()
print("data:", data, "type:", type(data))
# fetchone()返回字典类型,通过字典访问值
print("Student Number : %s " % data["Sno"])
# 使用 fetchall() 方法获取多条数据
j = cursor.execute("select * from Teacher ")
print("记录数:%d;" % j, "类型:", type(j))
datas = cursor.fetchall()
# 循环遍历查找字典值
for k in datas:
    print(k["Tname"])
print("datas:", datas, "type:", type(datas))
# fetchall()返回list类型,通过list访问值
print(datas[0]["Tname"])
# 关闭数据库连接
cursor.close()
connection.close()

输出查询结果【部分截图】

数据库修改等基本操作,请查阅mysql相关知识

-----------------------------------------------------------------------------

特别鸣谢以下大佬:

Anges黎梦      博客地址:https://www.cnblogs.com/AngesZhu/

快捷通道:
想学自动化测试(接口自动化、selenium自动化、appium自动化等)请联系,上海悠悠
悠悠大佬博客:
https://www.cnblogs.com/yoyoketang/
雷总博客:
https://www.cnblogs.com/leiziv5/

【python3 自动化之mysql操作】python3下的mysql入门基础的更多相关文章

  1. python学习道路(day12note)(mysql操作,python链接mysql,redis)

    1,针对mysql操作 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 设置密码 update user set password ...

  2. InnoDB Insert(插入)操作(下)--mysql技术内幕

    接上一篇文章,最后做的那个实验,我是想证明mysql innodb存储引擎,commit操作与flush数据到磁盘之间的关系,当与同事交流之后,他说,你应该把innodb_buffer_size的大小 ...

  3. mysql bin路径下的mysql被杀毒软件查杀后恢复过来也无法启动

    mysql服务被杀毒软件干掉之后操作 文件恢复过来后还是无法启动 同事使用杀毒软件之后发现,mysql的服务被干掉了.之后想到了处理办法: mysqld-nt -installnet start my ...

  4. mac下的一些mysql操作

    #一.从终端进入mysql 不同于windows下的mysql.mac下的mysql安装路径不同,所以操作上会略有不同: 以下操作以默认安装mysql为前提. ##一(1):打开终端后,先设置路径,后 ...

  5. Centos下安装mysql 总结

    一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...

  6. shell执行mysql操作

    http://ully.iteye.com/blog/1226494 http://www.jb51.net/article/55207.htm shell执行mysql操作 mysql  -hhos ...

  7. 【转】Shell执行MySql操作

    mysql  -hhostname -Pport -uusername -ppassword  -e  相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作m ...

  8. linux的mysql操作

    最近工作中经常需要使用到MySQL,有时候在WINXP,有时候在Linux中,而这次,需要在CentOS中配置一下,还需要用到phpmyadmin, 在网上搜了不少的资料. 无意中还找到了CentOS ...

  9. Linux 下卸载MySQL 5

    对于在Linux下通过rpm方式的mysql,我们能够通过移除这些rpm包以及删除项目的文件夹来达到卸载的目的.本文演示了在SUSE Linux 10下下载MySQL 5.5.37.详细见下文. 1. ...

  10. CentOS7下一个mysql安装

    CentOS7安装MySQL --下载mysql http://mirrors.sohu.com/mysql/MySQL-5.6/ http://mirrors.sohu.com/mysql/MySQ ...

随机推荐

  1. Spring 使用纯注解方式完成IoC

    目录 创建一个简单的Person类 使用xml方式配置Spring容器并获取bean的过程 创建xml配置文件 进行测试 使用纯注解方式配置Spring容器并获取bean的过程 创建spring配置类 ...

  2. java学习之—实现一个简单的ArrayList

    package thread1; /** * 实现一个简单的ArrayList * * @Title: uminton */ public class SimpleArrayList<T> ...

  3. spring cloud实战与思考(三) 微服务之间通过fiegn上传一组文件(下)

    需求场景: 用户调用微服务1的接口上传一组图片和对应的描述信息.微服务1处理后,再将这组图片上传给微服务2进行处理.各个微服务能区分开不同的图片进行不同处理. 上一篇博客已经讨论了在微服务之间传递一组 ...

  4. 根据 Power BI Desktop(预览版)中的报表页创建工具提示

    根据 Power BI Desktop 中创建的报表页,可创建直观丰富的报表工具提示,这些提示在你将鼠标悬停在视觉对象上时显示. 通过创建用作工具提示的报表页,使自定义工具提示包含视觉对象.图像以及在 ...

  5. 原生JS的Ajax技术

    1.同步和异步 同步现象:客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待  卡死状态 异步现象:客户端发送请求到服务器端,无论服务器是否返回响应,客户端都可以随意做其他事情,不会被卡 ...

  6. shutil模块和几种文件上传Demo

    一.shutil模块 1.介绍 shutil模块是对os中文件操作的补充.--移动 复制 打包 压缩 解压 2.基本使用 1. shutil.copyfileobj(文件1, 文件2, 长度) 将文件 ...

  7. Magento 2 创建 Widget

    Widget是一个更好的工具,可以将内容插入或编辑到CMS页面块或页面中. 什么是小部件? 小部件是Magento 2配置中的强大功能.作为商店管理员,您可以利用小部件来改善生动界面下的店面.小部件允 ...

  8. 测试框架httpclent 2.配置优化方法

    优化就是为了使代码看起来更简便,如果代码里面的每一个请求都写一次url,那么整体代码看起来很乱,而且一旦某个服务器的端口号或者域名有变动,那么所有的url都需要改变,成本太大.为了让代码看起来更简便, ...

  9. POJ - 3616 Milking Time (动态规划)

    Bessie is such a hard-working cow. In fact, she is so focused on maximizing her productivity that sh ...

  10. app升级注意事项version

    1.每次升级生成apk前,修改versionName: 位置: 2.修改数据库表中对应version字段与之对应: 3.出现waiting for debugger,要重启手机: 5.解析包错误,是a ...