如何用 Python 连接数据库

数据库是存储在计算机系统中的结构化信息或数据的组织良好的集合。在数据库中,数据以表格的形式排列,我们可以通过查询来访问这些信息或数据。

Python 可以用来连接数据库。 MySQL 是最受欢迎的数据库之一。在本教程中,我们将学习通过 Python 建立与 MySQL 的连接。让我们理解使用 Python 使用 MySQL 的以下步骤。

  1. 安装 MySQL 驱动程序
  2. 创建连接对象
  3. 创建光标对象
  4. 执行查询

安装 MySQL 驱动程序

首先,我们的系统中需要一个 MySQL 驱动程序。安装 MySQL 软件,配置设置。我们将使用 MySQL 连接器驱动程序,它是使用 pip 命令安装的。打开命令提示符并键入以下命令。


python -m pip install mysql-connector-python

按回车键。它将下载 MySQL 驱动程序。

  • 验证驱动程序

让我们检查一下是否安装正确。这可以通过导入 mysql.connector 来完成。


import mysql.connector

如果这一行执行没有错误,说明 MySQL 连接器安装正确。我们准备使用它。

创建连接对象

mysql.connector 提供了 connect() 方法,用于在 mysql 数据库和 Python 应用之间创建连接。语法如下。

语法:


Conn_obj= mysql.connector.connect(host = <hostname>, user = <username>, passwd = <password>)  

connect()函数接受以下参数。

  • 主机名- 表示运行 MySQL 的服务器名称或 IP 地址。
  • Username – 它代表我们使用 MySQL 服务器的用户名。默认情况下,MySQL 数据库的用户名是 root。
  • 密码- 密码在安装 MySQL 数据库时提供。如果我们使用根目录,我们不需要传递密码。
  • 数据库- 指定我们要连接的数据库名称。当我们有多个数据库时,使用这个参数。

考虑下面的例子。

示例-


import mysql.connector

# Creating a the connection object   
conn_obj = mysql.connector.connect(host="localhost", user="root", passwd="admin123")

# printing the connection object   
print(conn_obj)  

输出:

<mysql.connector.connection.MySQLConnection object at 0x7fb142edd780> 

创建光标对象

需要创建连接对象,因为它为多个工作环境提供了到数据库的相同连接。光标()功能用于创建光标对象。它是执行 SQL 查询的入口。语法如下。

语法:


Con_obj = conn.cursor()

让我们理解下面的例子。

示例-


import mysql.connector

# Creating the connection object   
conn_obj = mysql.connector.connect(host="localhost", user="root", passwd="admin123", database="mydatabase")

# printing the connection object   
print(conn_obj)

# creating the cursor object  
cur_obj = conn_obj.cursor()

print(cur_obj)  

输出:

 MySQLCursor: (Nothing executed yet) 

执行查询

在下面的示例中,我们将通过执行查询来创建一个数据库。让我们理解下面的例子。

示例-


import mysql.connector

# Creating the connection object   
conn_obj = mysql.connector.connect(host="localhost", user="root", passwd="admin123")

# creating the cursor object  
cur_obj = conn_obj.cursor()

try:
    # creating a new database using query 
    cur_obj.execute("create database New_PythonDB")

    # getting the list of all the databases which will now include the new database New_PythonDB  
    dbms = cur_obj.execute("show databases")

except:
    conn_obj.rollback() # it is used if the operation is failed then it will not reflect in your database

for x in cur_obj:
    print(x)

conn_obj.close() 

输出:

'information_schema',)
('javatpoint',)
('javatpoint1',)
(New_Pythondb)
('mydb',)
('mydb1',)
('mysql',)
('performance_schema',)
('testDB',)

在上面的教程中,我们已经讨论了如何通过 Python 建立到 MySQL 的连接。可以从(https://www.javatpoint.com/python-mysql-database-connection)用 MySQL 学习完整的 Python。


原创文章,作者:EKYWN,如若转载,请注明出处:https://www.506064.com/n/130611.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
EKYWNEKYWN
上一篇 2024-10-03 23:29
下一篇 2024-10-03 23:29

相关推荐

  • Python列表中负数的个数

    Python列表是一个有序的集合,可以存储多个不同类型的元素。而负数是指小于0的整数。在Python列表中,我们想要找到负数的个数,可以通过以下几个方面进行实现。 一、使用循环遍历…

    编程 2025-04-29
  • 如何查看Anaconda中Python路径

    对Anaconda中Python路径即conda环境的查看进行详细的阐述。 一、使用命令行查看 1、在Windows系统中,可以使用命令提示符(cmd)或者Anaconda Pro…

    编程 2025-04-29
  • Python中引入上一级目录中函数

    Python中经常需要调用其他文件夹中的模块或函数,其中一个常见的操作是引入上一级目录中的函数。在此,我们将从多个角度详细解释如何在Python中引入上一级目录的函数。 一、加入环…

    编程 2025-04-29
  • Python周杰伦代码用法介绍

    本文将从多个方面对Python周杰伦代码进行详细的阐述。 一、代码介绍 from urllib.request import urlopen from bs4 import Bea…

    编程 2025-04-29
  • Python计算阳历日期对应周几

    本文介绍如何通过Python计算任意阳历日期对应周几。 一、获取日期 获取日期可以通过Python内置的模块datetime实现,示例代码如下: from datetime imp…

    编程 2025-04-29
  • Python字典去重复工具

    使用Python语言编写字典去重复工具,可帮助用户快速去重复。 一、字典去重复工具的需求 在使用Python编写程序时,我们经常需要处理数据文件,其中包含了大量的重复数据。为了方便…

    编程 2025-04-29
  • Python清华镜像下载

    Python清华镜像是一个高质量的Python开发资源镜像站,提供了Python及其相关的开发工具、框架和文档的下载服务。本文将从以下几个方面对Python清华镜像下载进行详细的阐…

    编程 2025-04-29
  • python强行终止程序快捷键

    本文将从多个方面对python强行终止程序快捷键进行详细阐述,并提供相应代码示例。 一、Ctrl+C快捷键 Ctrl+C快捷键是在终端中经常用来强行终止运行的程序。当你在终端中运行…

    编程 2025-04-29
  • Python程序需要编译才能执行

    Python 被广泛应用于数据分析、人工智能、科学计算等领域,它的灵活性和简单易学的性质使得越来越多的人喜欢使用 Python 进行编程。然而,在 Python 中程序执行的方式不…

    编程 2025-04-29
  • 蝴蝶优化算法Python版

    蝴蝶优化算法是一种基于仿生学的优化算法,模仿自然界中的蝴蝶进行搜索。它可以应用于多个领域的优化问题,包括数学优化、工程问题、机器学习等。本文将从多个方面对蝴蝶优化算法Python版…

    编程 2025-04-29

发表回复

登录后才能评论