您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

教你如何优雅地用Python连接MySQL数据库

时间:2019-07-17 09:25:22  来源:  作者:
48

作者 | Python语音识别

来源 | 深度学习与python(ID:PythonDC)

不管是机器学习、web开发或者爬虫,数据库都是绕不过去的。那么今天我们就来介绍Python如何MySQL数据库进行连接以及数据的交换。主要分为以下几个方面:

  • 什么是数据库?

  • 什么是MySQLdb?

  • Python如何连接数据库?

  • 创建数据库数据库操作-CRUD

数据库基本上是结构化数据的集合,通过数据库可以用各种方式轻松地检索,管理和访问数据。最简单的数据库形式之一是文本数据库。目前关系数据库是最流行的数据库系统,目前主流的关系数据库主要由以下几个:

  • MySQL
  • Oracle Database
  • SQL server
  • Sybase
  • Informix
  • IBM db2
  • NO SQL

其中MySQL是最容易使用的数据库,也是我们这次所要介绍的。

什么是MySQLdb

MySQLdb是一个开源免费的关系数据库管理系统,它使用结构化查询语言。SQL(结构化查询语言)是关系数据库的标准语言,允许用户对数据进行各种操作,如操作,创建,删除等。简而言之,SQL允许您对数据执行任何操作。

Python如何连接数据库

Python连接数据库的方法非常简单,下图表示Python与数据库的基本数据交换原理。

在连接MySQL数据库之前,请确保在计算机上安装了MySQL应用程序。也可使用远程数据库,MySQL应用程序提供了一下数据工具:MySQL服务器、所有可用连接器、MySQL Workbench、MySQL通知程序、用于Excel和Microsoft Visual Studio的工具、MySQL示例数据库、MySQL文档。

安装好应用程序之后,我们还需要安装python中的Mysql函数库mysql.connector,这个可以直接使用pip进行安装。连接数据库需要的基本参数是:

  • 用户名 -它只是您为MySQL服务器工作的用户名,默认用户名为root。
  • 密码 -密码由用户在安装MySQL数据库时提供。我在这里给密码'password123'
  • 主机名 -这基本上是运行MySQL的服务器名称或IP地址,如果它是'localhost',那么你的IP地址是127.0.0.0

以下是Python连接数据库的程序

importmysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")

print(mydb)

运行程序输出为:

C:UsersHarshit_KantPycharmProjectstest1venvspython.exe C:/Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn.py

<mysql.connector.connection_cext.CMySQLConnection object at 0x000001606D7BD6A0>

这里'mydb'只是一个示例。从输出中可以清楚地看到Python已连接到数据库。

创建数据库

经过上面一步,我们已经成功建立数据库连接,现在您就可以创建自己的数据库,它将充当python和MySQL服务器之间数据交流的桥梁。建立数据库代码如下:

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")

mycursor=mydb.cursor

mycursor.execute("create database harshdb")

程序说明:

  • 在上面的程序中使用了游标,它基本上是一个用于与整个MySQL服务器通信的对象,通过它我可以创建自己的数据库。
  • 您可以从输出中看到创建了名为“harshdb”的数据库,该数据库是自定义的,因为您可以为数据库指定任何名称。

同时,如果你想要查看服务器中已经建立的数据库,可以使用以下代码:

importmysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")

mycursor=mydb.cursor

mycursor.execute("show databases")

fordb inmycursor:

print(db)

输出示例为:

('harshdb')

('information_schema')

('mysql')

('performance_schema')

('sakila')

('sys')

('world')

数据库操作

数据库的基本操作包括:创建、读取、更新和删除,下面我通过示例程序来为大家演示基本使用方法。

创建操作:用于在表中创建记录的SQL语句,或者可以说它用于创建表。代码如下:

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database=harshdb)

mycursor=mydb.cursor

mycursor.execute("create table employee(name varchar(250),sal int(20))")

程序说明:

  • 在上面给出的程序中,我创建了一个表'employee'。
  • 表员工有两个字段'name'和'sal'。
  • 这里,User id是“root”,Password是“password123”,用于访问harshdb。

下面给出的屏幕截图显示了表'employee'并返回字段'name'和'sal'。

读取写入:用于从数据库中获取有用信息。代码示例如下:

importmysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")

mycursor=mydb.cursor

sqlformula = "Insert into employee(name,sal) values(%s,%s)"//'values has placeholders

employees = [("harshit",200000),("rahul", 30000),("avinash", 40000),("amit", 50000),]//Created an array of emplpoyees

mycursor.executemany(sqlformula, employees)//Passing the data

mydb.commit//SQL statement used for saving the changes

在上面的代码中,我通过在Python中编写SQL语句写入一组员工数据。写入之后数据库的屏幕截图显示如下:

更新 :用于更新表中的记录或更新表。代码如下:

import mysql.connector

mydb=mysql.connector.connect(host="localhost",user="root",passwd="password123",database="harshdb")

mycursor=mydb.cursor

sql = "Update employee SET sal = 70000 WHERE name = 'harshit'"

mycursor.execute(sql)

mydb.commit

程序说明:我们在上面给出的代码中更新了harshit的行“sal”。下面给出的数据库截图显示更新结果。

删除 :用于删除表格。代码示例如下:

import mysql.connector

mydb = mysql.connector.connect(host =“localhost”,user =“root”,passwd =“password123”,database =“harshdb”)

mycursor = mydb.cursor

sql =“DELETE FROM employee WHERE name ='harshit'“

mycursor.execute(sql)

mydb.commit

程序说明:在上面的代码中,我删除了一条'harshit'的重复记录。

Python连接数据库还有一个pymysql函数包,该包也十分简单且方便的与数据库进行交互,大家可以尝试一下。

参考

https://medium.com/edureka/python-database-connection-b4f9b301947c

(*本文仅代表作者观点,转载请联系原作者)



Tags:Python MySQL   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
PyMySQL安装方法pip install pymysql连接数据库注意事项在进行本文以下内容之前需要注意: 你有一个MySQL数据库,并且已经启动。 你有可以连接该数据库的用户名和密码 你有一个...【详细内容】
2020-06-05  Tags: Python MySQL  点击:(88)  评论:(0)  加入收藏
作者 | CDA数据分析师来源 | CDA数据分析研究院本文涉及到的开发环境: 操作系统 Windows 10 数据库 MySQL 8.0 Python 3.7.2 pip 19.0.3两种方法进行数据库的连接分别是PyMy...【详细内容】
2019-08-29  Tags: Python MySQL  点击:(169)  评论:(0)  加入收藏
48作者 | Python语音识别来源 | 深度学习与python(ID:PythonDC)不管是机器学习、web开发或者爬虫,数据库都是绕不过去的。那么今天我们就来介绍Python如何Mysql数据库进行连...【详细内容】
2019-07-17  Tags: Python MySQL  点击:(334)  评论:(0)  加入收藏
▌简易百科推荐
大家好,我是菜鸟哥,今天跟大家一起聊一下Python4的话题! 从2020年的1月1号开始,Python官方正式的停止了对于Python2的维护。Python也正式的进入了Python3的时代。而随着时间的...【详细内容】
2021-12-28  菜鸟学python    Tags:Python4   点击:(1)  评论:(0)  加入收藏
学习Python的初衷是因为它的实践的便捷性,几乎计算机上能完成的各种操作都能在Python上找到解决途径。平时工作需要在线学习。而在线学习的复杂性经常让人抓狂。费时费力且效...【详细内容】
2021-12-28  风度翩翩的Python    Tags:Python   点击:(1)  评论:(0)  加入收藏
Python 是一个很棒的语言。它是世界上发展最快的编程语言之一。它一次又一次地证明了在开发人员职位中和跨行业的数据科学职位中的实用性。整个 Python 及其库的生态系统使...【详细内容】
2021-12-27  IT资料库    Tags:Python 库   点击:(2)  评论:(0)  加入收藏
菜单驱动程序简介菜单驱动程序是通过显示选项列表从用户那里获取输入并允许用户从选项列表中选择输入的程序。菜单驱动程序的一个简单示例是 ATM(自动取款机)。在交易的情况下...【详细内容】
2021-12-27  子冉爱python    Tags:Python   点击:(4)  评论:(0)  加入收藏
有不少同学学完Python后仍然很难将其灵活运用。我整理15个Python入门的小程序。在实践中应用Python会有事半功倍的效果。01 实现二元二次函数实现数学里的二元二次函数:f(x,...【详细内容】
2021-12-22  程序汪小成    Tags:Python入门   点击:(32)  评论:(0)  加入收藏
Verilog是由一个个module组成的,下面是其中一个module在网表中的样子,我只需要提取module名字、实例化关系。module rst_filter ( ...); 端口声明... wire定义......【详细内容】
2021-12-22  编程啊青    Tags:Verilog   点击:(9)  评论:(0)  加入收藏
运行环境 如何从 MP4 视频中提取帧 将帧变成 GIF 创建 MP4 到 GIF GUI ...【详细内容】
2021-12-22  修道猿    Tags:Python   点击:(6)  评论:(0)  加入收藏
面向对象:Object Oriented Programming,简称OOP,即面向对象程序设计。类(Class)和对象(Object)类是用来描述具有相同属性和方法对象的集合。对象是类的具体实例。比如,学生都有...【详细内容】
2021-12-22  我头秃了    Tags:python   点击:(9)  评论:(0)  加入收藏
所谓内置函数,就是Python提供的, 可以直接拿来直接用的函数,比如大家熟悉的print,range、input等,也有不是很熟,但是很重要的,如enumerate、zip、join等,Python内置的这些函数非常...【详细内容】
2021-12-21  程序员小新ds    Tags:python初   点击:(5)  评论:(0)  加入收藏
Hi,大家好。我们在接口自动化测试项目中,有时候需要一些加密。今天给大伙介绍Python实现各种 加密 ,接口加解密再也不愁。目录一、项目加解密需求分析六、Python加密库PyCrypto...【详细内容】
2021-12-21  Python可乐    Tags:Python   点击:(8)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条