Python3学习笔记07-数据库之MySQL篇

1. 安装MySQL

    从MySQL官网http://www.mysql.com或国内各大软件站下载MySQL安装,安装过程中注意设置用户root,文中假设密码也为root。现在最新版本为8.0,最常用版本为5.6和5.7。
    MySQL的开发环境(IDE)除了有官方的Shell以及自带的Work Bentch外,还有phpMyAdmin(采用B/S方式用浏览器进行管理)、mysqlfront、Navicat等。笔者最常用的是Navicat,它不仅可以管理MySQL,还可以管理SQLite、MS SQL等。
    安装后建议将mysql.exe所在目录加入系统环境变量。如将“C:\Program Files\MySQL\MySQL Server 5.6\bin”加入PATH。

2. 连接MySQL

连接MySQL的命令行如下:
 

mysql -h 127.0.0.1 -P 3306 -u root -p

    执行后根据提示输入密码。也可以在-p后连续输入密码,-p和密码之间没有空格,是连在一起的。
    和Python类似,执行mysql后(包括不带参数和带参数的情形,如上例),命令行环境将进入mysql程序当中,提示符也变成了“mysql>”(就像Python的提示符是>>>)。这里Shell中的每条命令要以分号结尾。

3. 设置字符集

    MySQL的默认字符集是Latin1,因此会出现中文乱码问题。将字符集设为gbk或utf-8即可。设置方法如下:
    在安装目录中找到配置文件my.ini,将其中[mysql]中的default-character-set设为gbk。这里要看懂ini文件哦,#打头的为注释,如果[mysql]下没有此键,直接写上default-character-set=gbk即可。再把[mysqld]中的character_set_server值设为gbk。
    可以用如下命令来查看设置结果:
 

show variables like 'character%';

4. 创建数据库和数据表

    在配置文件中的[mysqld]里,mydir指明了数据库文件存放位置。使用下述命令可查看所有现有的数据库:
 

show databases;

如果将其他电脑已有数据库复制到本目录(如C:\ProgramData\MySQL\MySQL Server 5.6\data),也可以用此命令列出数据库。所以这也是备份数据库最简单的方法。
    用下述命令创建数据库mytest:
 

create database mytest;

    用下述命令插入数据表mytable:
 

use mytest;
create table mytable (id integer(5), name varchar(20), phone varchar(20));

    用下述命令插入数据:
 

insert mytable values(1,"richard","13800001111");
insert mytable values(2,"tom","15100001111");

    执行SQL查询语句,查看该表内容:

select * from mytable;

5. 使用Python连接数据库,读取数据

    首先要下载安装PyMySQL模块,以下是示例代码:
 

import pymysql
 # 打开数据库连接
db = pymysql.connect("127.0.0.1","root","root","mytest")
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# 使用 execute()  方法执行 SQL 查询
cursor.execute("use mytest")
cursor.execute("SELECT * from mytable")
# 使用 fetchone() 方法获取单条数据.
data = cursor.fetchall()
print (data)
# 关闭数据库连接
db.close()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值