如何利用Python连接MySQL数据库实现数据储存
介绍
MySQL是一个关系型数据库,MySQL由于性能高、成本低、可靠性好,已经成为最流行的开源数据库。最开始由瑞典的MySQL AB公司开发,后来被甲骨文公司(Oracle)收购。
如何利用Python连接MySQL数据库实现数据储存,下面我们将着重介绍。
Python连接MySQL实现数据储存
首先我们需要准备Python的pymysql模块,MySQL数据库(这个自行网上找教学安装),Navicat Premium 15数据库工具(可要可不要,只是方便操作)
pymysql模块的安装在终端(cmd)输入pip install pymysql 进行安装,也可进pycharm里安装(不会百度有教学,这里不多讲)
MySQL也自行安装,b站里有教学(装这个一定要慢慢看着教程来,我装了四个钟才调试好)
准备好工具环境后下面我们开始操作
进入终端以管理员方式进入(cmd)打开,输入mysql -h 127.0.0.1 -u root -p
输入自己的密码,进行登入 (登入成功的页面如下)
登入成功后我们就不用管它了,打开python(pycharm)首先调用pymysql
import pymysql #调用pymysql
在工具Navicat Premium 15中打开连接—MySQL
连接名: localhost 端口3306 用户名:自己的 账户:自己的 确认无误后测试连接,没问题就点确定
确定后在左侧中创建新的数据库 命名为python(命名都行) 后打开python(数据库,不是编程的那个python)中的表,新建表命名为test
设计表,名可以修改,其他不变
设计完数据库的表后打开python(pycharm)输入连接数据库代码:(注释有说明作用)
#接入本地数据库 host为本地名称 可以为IP地址 默认是localhost user为账号 password为密码 port为端口 db为库 charset为编码器
db = pymysql.connect(host="localhost",user="root",password="12345",port= 3306,db='python',charset="utf8")
#获取操作
cursor = db.cursor()
#查询第一条数据
sql = "select * from test"
cursor.execute(sql)
data = cursor.fetchone()
print("(注:显示none时表示数据库没有数据)查询的数据有: ")
print(data)
这个作用为查询第一条数据,输出后是你数据库的第一条数据
我们现在开始写输入数据,在数据库插入数据进行储存(注释有说明作用)
zhanghao = input("请输入需要保存的账号:")
quangbu = ('%s' % zhanghao)
#try与except个人理解为if与else 但if在这用不了
try:
#输出数据进数据库
cursor.execute("insert into test(id) values('%s')" % quangbu)
# 数据提交
db.commit()
print("保存成功")
#如没成功就失败
except Exception as err:
print("修改失败,", err)
db.rollback()
有了第一条的基础后,你可以试着写第二条password,第三条name,实在写不出来再往下看
-
-
-
-
-
-
-
-
-
我们继续写入另外两条
mima = input("请输入需要保存的密码:")
mi = ('%s' % mima)
mingzi = input("请输入需要保存的注释:")
zi = ('%s' % mingzi)
写完这两条输入后,这时我们只需要在输出数据进入数据库 那行做出改动
cursor.execute("insert into test(id,password,name) values('%s','%s','%s')" %(quangbu,mi,zi))
写上结尾,关闭连接,完美
db.close()
我们运行试试
初始数据
运行python代码
刷新 Navicat Premium 15软件,我们插入的数据就在我们数据库内啦
后续我会继续更新,比如查询数据,查询自己的账号密码等
总结
到此这篇关于如何利用Python连接MySQL数据库实现数据储存的文章就介绍到这了,更多相关Python连接MySQL数据储存内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341