热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何使用mysql_nd:Python连接MySQL数据库的优雅指南

无论是进行机器学习、Web开发还是爬虫项目,数据库操作都是必不可少的一环。本文将详细介绍如何使用Python通过`mysql_nd`库与MySQL数据库进行高效连接和数据交互。内容涵盖以下几个方面:

不管是机器学习、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与数据库的基本数据交换原理。

097c903de22d8cfcfb4395ad29aefdc5.png

在连接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连接数据库的程序import mysql.connectormydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")print(mydb)

运行程序输出为:C:UsersHarshit_KantPycharmProjectstest1venvScriptspython.exe C:/Users/Harshit_Kant/PycharmProjects/test1/venv/python-db-conn.py

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

创建数据库

经过上面一步,我们已经成功建立数据库连接,现在您就可以创建自己的数据库,它将充当python和MySQL服务器之间数据交流的桥梁。建立数据库代码如下:import mysql.connectormydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")mycursor=mydb.cursor()mycursor.execute("create database harshdb")

程序说明:在上面的程序中使用了游标,它基本上是一个用于与整个MySQL服务器通信的对象,通过它我可以创建自己的数据库。

您可以从输出中看到创建了名为“harshdb”的数据库,该数据库是自定义的,因为您可以为数据库指定任何名称。

同时,如果你想要查看服务器中已经建立的数据库,可以使用以下代码:import mysql.connectormydb=mysql.connector.connect(host="localhost",user="root",passwd="password123")mycursor=mydb.cursor()mycursor.execute("show databases")for db in mycursor:print(db)

输出示例为:('harshdb')('information_schema')('mysql')('performance_schema')('sakila')('sys')('world')

数据库操作

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

创建操作:用于在表中创建记录的SQL语句,或者可以说它用于创建表。代码如下:import mysql.connectormydb=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'。

26268247dd4c1d9eba7d9d5c6cf7547d.png

读取写入:用于从数据库中获取有用信息。代码示例如下:import mysql.connectormydb=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 placeholdersemployees = [("harshit",200000),("rahul", 30000),("avinash", 40000),("amit", 50000),]//Created an array of emplpoyeesmycursor.executemany(sqlformula, employees)//Passing the datamydb.commit()//SQL statement used for saving the changes

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

4fcb8d5d177b6b4d0ca6e4a5fc0363ff.png

更新 :用于更新表中的记录或更新表。代码如下:import mysql.connectormydb=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”。下面给出的数据库截图显示更新结果。

815656807fe365ed191a1558ad2a9a15.png

删除 :用于删除表格。代码示例如下:import mysql.connectormydb = 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函数包,该包也十分简单且方便的与数据库进行交互,大家可以尝试一下。



推荐阅读
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 本文详细介绍了Python编程语言的学习路径,涵盖基础语法、常用组件、开发工具、数据库管理、Web服务开发、大数据分析、人工智能、爬虫开发及办公自动化等多个方向。通过系统化的学习计划,帮助初学者快速掌握Python的核心技能。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
  • MySQL索引详解与优化
    本文深入探讨了MySQL中的索引机制,包括索引的基本概念、优势与劣势、分类及其实现原理,并详细介绍了索引的使用场景和优化技巧。通过具体示例,帮助读者更好地理解和应用索引以提升数据库性能。 ... [详细]
  • 本文探讨了 Spring Boot 应用程序在不同配置下支持的最大并发连接数,重点分析了内置服务器(如 Tomcat、Jetty 和 Undertow)的默认设置及其对性能的影响。 ... [详细]
  • 探讨如何真正掌握Java EE,包括所需技能、工具和实践经验。资深软件教学总监李刚分享了对毕业生简历中常见问题的看法,并提供了详尽的标准。 ... [详细]
  • PostgreSQL 10 离线安装指南
    本文详细介绍了如何在无法联网的服务器上进行 PostgreSQL 10 的离线安装,并涵盖了从下载安装包到配置远程访问的完整步骤。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • 探讨如何从数据库中按分组获取最大N条记录的方法,并分享新年祝福。本文提供多种解决方案,适用于不同数据库系统,如MySQL、Oracle等。 ... [详细]
  • 本文介绍 SQL Server 的基本概念和操作,涵盖系统数据库、常用数据类型、表的创建及增删改查等基础操作。通过实例帮助读者快速上手 SQL Server 数据库管理。 ... [详细]
  • 微软Exchange服务器遭遇2022年版“千年虫”漏洞
    微软Exchange服务器在新年伊始遭遇了一个类似于‘千年虫’的日期处理漏洞,导致邮件传输受阻。该问题主要影响配置了FIP-FS恶意软件引擎的Exchange 2016和2019版本。 ... [详细]
  • 本文探讨了在Windows Server 2008环境下配置Tomcat使用80端口时遇到的问题,包括端口被占用、多项目访问失败等,并提供详细的解决方法和配置建议。 ... [详细]
  • 本文将介绍网易NEC CSS框架的规范及其在实际项目中的应用。通过详细解析其分类和命名规则,探讨如何编写高效、可维护的CSS代码,并分享一些实用的学习心得。 ... [详细]
  • 方法:1 配置数据库basediros.path.abspath(os.path.dirname(__file__))  #获取当前文件的绝对路径appFlask(__name__ ... [详细]
  • 本文介绍了数据库体系的基础知识,涵盖关系型数据库(如MySQL)和非关系型数据库(如MongoDB)的基本操作及高级功能。通过三个阶段的学习路径——基础、优化和部署,帮助读者全面掌握数据库的使用和管理。 ... [详细]
author-avatar
mobiledu2502876223
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有