Python3操作MySql数据库

当MySql遇上Python该怎么玩呢?今晚的时间又双花在了Python上,真的是爱不释手的语言呀(笑抽)
这数据库操作比java简单多了(步骤)…强烈吐槽呀

说明

  1. 需要安装mysql 自行下载吧
  2. python版本3.6
  3. winver版本 win10

MySQL-python安装问题

当初安装mysql时遇到了不少坑,直接使用pip 方式安装各种报错,fuck!我忘记做错误笔记了。。。
不幸中的万幸…我做了一个超级简陋的笔记…安装教程…

笔记

安装失败需要下载一些文件。我做的笔记只有这一部分,嗯,应该这一部分就能指导我解决问题了。

https://pypi.python.org/pypi/mysqlclient/1.3.7
到这里下载,目前这是最新版本的,也可以 https://pypi.python.org/pypi 在这里自行搜索 mysql
下载对应的版本 cmd命令下 pip install 文件名
如果64位安装不了则安装32位…

开始上手

import MySQLdb
#连接数据库
conn= MySQLdb.connect(
        host='localhost',
        port = 3306,
        user='root', 
        passwd='a',
        db ='test', #如果还没有创建test数据库则这个db参数可以不用   执行以下语句就可以创建数据库test了 cur.execute("create database test")
        charset='utf8',  #设置编码集   如果没有在插入中文数据时会报错UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-2: ordinal not in range(256)之类的错误
        )
cur = conn.cursor() #要想使用数据库则还需要创建游标

增删改查

#创建数据库
# cur.execute("create database test")
#创建数据表
# cur.execute("create table teacher(id int primary key auto_increment,name varchar(20),class varchar(20),age int(3))")
#插入一条数据
# cur.execute("insert into teacher(name,class,age) values('Tom','3 year 1 class',26)")
# cur.execute("insert into teacher(name,class,age) values('中文可以了吧!','5 year 4 class',48)") #插入中文数据 在前面如果不设置这句charset='utf8' 会报编码问题
#修改查询条件的数据
#cur.execute("update teacher set class='3 year 2 class' where name = 'Tom'")
#删除查询条件的数据
#cur.execute("delete from teacher where age='26'")

#查询数据
c = cur.execute("select * from teacher")
print( c ) #输出的只是数据条数  那么怎么才能输出数据呢?
print( '输出一条数据',cur.fetchone() )
print( '输出一条数据',cur.fetchone() )

# print( '输出所有数据',cur.fetchall())
#迭代输出所有数据
for i in cur.fetchmany(c): #获取表中所有数据
    print( i )

cur.close()
conn.commit()
conn.close()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值