Python筑基之旅-MySQL数据库(二)

目录

一、第三方库

1、mysql-connector-python

1-1、由来

1-2、优缺点  

1-2-1、优点

1-2-1-1、官方支持

1-2-1-2、纯Python实现

1-2-1-3、全面支持

1-2-1-4、兼容性

1-2-1-5、易于使用

1-2-2、缺点

1-2-2-1、性能

1-2-2-2、安装

1-2-2-3、社区支持

1-2-2-4、扩展性

1-3、功能

1-3-1、数据库连接

1-3-2、SQL语句执行

1-3-3、数据类型转换

1-3-4、自动重连与事务处理

1-3-5、SSL加密连接

1-3-6、兼容性与灵活性

2、PyMySQL

2-1、由来

2-2、优缺点

2-2-1、优点

2-2-1-1、简单易用

2-2-1-2、纯Python实现

2-2-1-3、线程安全

2-2-1-4、支持大部分MySQL功能

2-2-1-5、连接池支持

2-2-2、缺点

2-2-2-1、性能

2-2-2-2、资源消耗

2-2-2-3、依赖关系

2-2-2-4、功能限制

2-2-2-5、安全性

2-3、功能

2-3-1、数据库连接

2-3-2、执行SQL语句

2-3-3、事务管理

2-3-4、数据类型转换

2-3-5、连接池

2-3-6、数据库管理

2-3-7、扩展性和灵活性

3、PeeWee

3-1、由来

3-2、优缺点

3-2-1、优点

3-2-1-1、轻量级

3-2-1-2、简单易用

3-2-1-3、支持多种数据库后端

3-2-1-4、良好的性能

3-2-1-5、与Django/Flask的集成

3-2-2、缺点

3-2-2-1、不支持自动化Schema迁移

3-2-2-2、社区支持相对较少

3-2-2-3、功能相对较少

3-3、功能

3-3-1、定义数据库模型

3-3-2、数据库连接和管理

3-3-3、执行CRUD操作

3-3-4、强大的查询构建器

3-3-5、支持多种数据库后端

3-3-6、数据迁移

3-3-7、性能优化

4、SQLAlchemy

4-1、由来

4-2、优缺点

4-2-1、优点

4-2-1-1、易用性

4-2-1-2、灵活性

4-2-1-3、对象关系映射(ORM)

4-2-1-4、查询构建器

4-2-1-5、事务管理

4-2-1-6、性能优化

4-2-1-7、扩展性

4-2-2、缺点

4-2-2-1、学习曲线

4-2-2-2、性能开销

4-2-2-3、调试困难

4-2-2-4、代码冗余

4-3、功能

4-3-1、对象关系映射(ORM)

4-3-2、查询构建器

4-3-3、关系管理

4-3-4、会话管理

4-3-5、数据库迁移

4-3-6、原生SQL支持

4-3-7、连接池

4-3-8、事件监听

4-3-9、扩展性

4-3-10、文档和社区支持

二、推荐阅读

1、Python函数之旅

2、Python算法之旅

3、博客个人主页

一、第三方库

1、mysql-connector-python

1-1、由来

        mysql-connector-python是Oracle官方提供的用于Python连接到MySQL数据库的库,它的由来主要是为了提供一个官方的、纯Python实现的MySQL客户端,使Python开发者能够方便地连接到MySQL数据库并执行各种数据库操作,如查询、插入、更新和删除等。

        随着Python的普及和MySQL数据库的广泛使用,许多Python开发者需要一种方式来与MySQL数据库进行交互,mysql-connector-python就是为了满足这一需求而诞生的,它遵循Python DB-API 2.0 规范(PEP 249),这意味着它提供了与其他数据库连接库相似的接口和功能,使得开发者可以更容易地使用它,而无需重新学习新的API。

        mysql-connector-python提供了全面的功能来连接、查询和管理MySQL数据库,它支持多种连接方式,包括TCP/IP、Unix套接字以及命名管道;此外,它还支持SSL加密连接,确保了数据传输的安全性;在数据类型转换方面,驱动自动将Python对象(如字符串、整数和日期)转化为对应的MySQL数据类型,并将数据库返回的结果转化为Python对象,简化了数据操作。

        总之,mysql-connector-python库的由来是为了提供一个官方的、纯Python实现的MySQL客户端库,以满足Python开发者与MySQL数据库进行交互的需求。

1-2、点  

        mysql-connector-python是Oracle官方提供的Python连接MySQL数据库的库,其主要的优缺点如下:

1-2-1、优点
1-2-1-1、官方支持

        由于这是Oracle官方提供的库,因此可以确保它与MySQL数据库的兼容性和稳定性,这也意味着它通常会比第三方库获得更早的更新和修复。

1-2-1-2、纯Python实现

        mysql-connector-python是用纯Python编写的,这意味着它不需要任何外部依赖(除了Python本身和MySQL客户端库)即可运行,这使得它在不同的操作系统和环境中都能很好地工作,减少了安装和配置的复杂性。

1-2-1-3、全面支持

        它支持大多数MySQL特性,包括事务处理、存储过程、游标等,此外,它还支持SSL加密连接,以确保数据传输的安全性。

1-2-1-4、兼容性

        它不仅与MySQL兼容,还与其他MySQL兼容的数据库(如MariaDB、Percona Server等)兼容,这使得它可以在更广泛的环境中使用。

1-2-1-5、易于使用

        它遵循Python DB-API 2.0 规范(PEP 249),这使得它与其他Python数据库连接库具有相似的接口和功能,这使得开发者可以更容易地使用它,而无需重新学习新的API。

1-2-2、缺点
1-2-2-1、性能

        由于mysql-connector-python是用纯Python编写的,因此在某些情况下,它的性能可能不如使用C或C++编写的其他库(如 MySQLdb 或 PyMySQL),然而,在大多数情况下,这种性能差异可能并不明显。

1-2-2-2、安装

        虽然mysql-connector-python本身不需要任何外部依赖即可安装,但它可能需要安装MySQL 客户端库才能正常工作,在某些操作系统中,这可能需要额外的步骤或配置。

1-2-2-3、社区支持

        与一些流行的第三方库相比,mysql-connector-python的社区可能较小,这可能导致在寻求帮助或解决问题时,可用的资源和支持较少。

1-2-2-4、扩展性

        在某些高级功能上,mysql-connector-python不如ORM(对象关系映射)库(如SQLAlchemy)强大或灵活,ORM库提供了更高级的数据访问和操作功能,以及更强大的查询构建和对象映射功能。

        注意,以上优点和缺点都是相对的,并且可能因具体情况而异,在选择使用哪个Python MySQL库时,应根据自己的项目需求、环境要求和偏好进行评估和选择。

1-3、功能

        mysql-connector-python是一个纯Python实现的MySQL客户端库,它提供了与MySQL数据库进行交互的多种功能,其主要功能有:

1-3-1、数据库连接

        mysql-connector-python支持多种连接方式,包括TCP/IP、Unix套接字以及命名管道,允许Python程序与MySQL数据库建立连接。

1-3-2、SQL语句执行

        它支持执行各种SQL语句,包括数据查询(SELECT)、数据插入(INSERT)、数据更新(UPDATE)和数据删除(DELETE)等操作,从而实现对MySQL数据库的全面操作。

1-3-3、数据类型转换

        mysql-connector-python能够自动处理Python数据类型与MySQL数据类型之间的转换,简化了数据操作,驱动会自动将Python对象(如字符串、整数和日期)转化为对应的MySQL数据类型,并将数据库返回的结果转化为Python对象。

1-3-4、自动重连与事务处理

        当网络中断或服务器重启时,mysql-connector-python可以自动重新建立连接,保证操作的连续性;同时,它支持事务处理,可以按需控制原子性和一致性。

1-3-5、SSL加密连接

        mysql-connector-python支持SSL加密连接,确保了数据传输的安全性。

1-3-6、兼容性与灵活性

        mysql-connector-python兼容Python 2.7以及3.x版本,并且遵循DB-API 2.0规范(PEP 249),提供了灵活的API供开发者使用。

        总的来说,mysql-connector-python是一个功能强大、易于使用且灵活的MySQL客户端库,为Python开发者提供了与MySQL数据库进行交互的便利工具。

2、PyMySQL

2-1、由来

        PyMySQL是一个在Python 3.x版本中用于连接MySQL服务器的第三方库,它的由来可以追溯到Python和MySQL这两种技术的融合需求。

        首先,Python是一种广泛使用的编程语言,以其简洁、易读和强大的功能而受到开发者的喜爱,而MySQL则是一种流行的关系型数据库管理系统,用于存储和管理大量的数据。在软件开发过程中,经常需要将Python与MySQL进行连接,以实现数据的存储、查询和更新等功能。

        然而,Python标准库中并没有直接支持MySQL的库,这就需要在Python和MySQL之间进行桥梁的构建。为了解决这一问题,一些开发者开始开发能够连接Python和MySQL的第三方库,其中PyMySQL就是其中之一。

        PyMySQL遵循Python数据库API v2.0规范,并包含了纯Python的MySQL客户端库,它提供了与MySQL数据库进行交互的接口,使得Python开发者可以方便地使用Python语言来操作MySQL数据库。

        因此,PyMySQL的由来可以看作是Python和MySQL技术融合的需求推动下的产物,它的出现为Python开发者提供了与MySQL数据库进行交互的便利工具。

2-2、

        PyMySQL作为Python连接MySQL数据库的第三方库,其主要的优缺点如下:

2-2-1、优点
2-2-1-1、简单易用

        PyMySQL提供了简单易用的API,使得Python开发者可以方便地进行数据库的连接和操作,它遵循Python DB-API 2.0规范,因此与其他数据库库相比,其使用方式非常相似。

2-2-1-2、纯Python实现

        PyMySQL是纯Python编写的库,不需要任何C语言的依赖项,这意味着它可以在Python的各个平台上运行,无需担心平台兼容性问题。

2-2-1-3、线程安全

        PyMySQL是线程安全的,可以在多线程环境中安全地使用,这对于需要处理并发连接的Web应用程序来说非常重要。

2-2-1-4、支持大部分MySQL功能

        PyMySQL支持大部分MySQL的SQL语法和功能,包括事务、存储过程等,这使得开发者可以使用PyMySQL来执行复杂的数据库操作。

2-2-1-5、连接池支持

        虽然PyMySQL本身不提供连接池,但它可以与其他连接池库(如DBUtils)一起使用,以提供更高效、更稳定的数据库连接。

2-2-2、缺点
2-2-2-1、性能

        在某些情况下,与MySQL的原生C语言客户端相比,PyMySQL的性能可能会稍逊一筹,特别是在处理大量数据或执行复杂查询时,可能会遇到性能瓶颈。

2-2-2-2、资源消耗

        由于PyMySQL是纯Python编写的,因此在运行时可能会消耗更多的CPU和内存资源,这可能会对大型应用程序或服务器的性能产生负面影响。

2-2-2-3、依赖关系

        虽然PyMySQL不依赖于C语言库,但它可能依赖于其他Python库或模块,这些依赖关系可能会增加部署和管理的复杂性。

2-2-2-4、功能限制

        虽然PyMySQL支持大部分MySQL的功能,但它可能不支持某些高级特性或优化选项,这可能会限制其在某些特定场景下的应用。

2-2-2-5、安全性

        在使用PyMySQL时,需要确保正确地处理数据库连接和凭据信息,以防止潜在的安全风险。例如,未加密的连接可能会暴露敏感数据给潜在的攻击者。

        注意,这些优点和缺点可能会因应用程序的具体需求和上下文而有所不同,在选择使用PyMySQL时,应根据实际情况进行权衡和决策。

2-3、功能

        PyMySQL是一个Python编写的MySQL客户端库,它提供了与MySQL数据库进行交互的多种功能,其主要功能有:

2-3-1、数据库连接

        PyMySQL允许Python程序与MySQL数据库建立连接,从而进行后续的数据操作。

2-3-2、执行SQL语句

        PyMySQL支持执行各种SQL语句,包括数据查询(SELECT)、数据插入(INSERT)、数据更新(UPDATE)和数据删除(DELETE)等操作。

2-3-3、事务管理

        PyMySQL提供了事务管理的功能,允许开发者在数据库操作中执行多个操作作为一个工作单元,要么全部完成,要么全部不完成。

2-3-4、数据类型转换

        PyMySQL能够自动处理Python数据类型与MySQL数据类型之间的转换,使开发者无需关心数据类型的差异。

2-3-5、连接池

        连接池是管理和复用数据库连接的一种技术,PyMySQL支持连接池功能,可以提高数据库操作的效率和性能。

2-3-6、数据库管理

        除了基本的数据操作外,PyMySQL还支持一些数据库管理相关的任务,如创建或删除数据库、创建或删除数据表、创建或删除索引等。

2-3-7、扩展性和灵活性

        PyMySQL是一个高度可定制和可扩展的库,开发者可以根据需要扩展其功能或修改其行为。

        总之,PyMySQL是一个功能强大、易于使用且灵活的MySQL客户端库,它为Python开发者提供了与MySQL数据库进行交互的便利工具。

3、PeeWee

3-1、由来

        Peewee是一个基ORM(对象关系映射)的Python库,由美国软件工程师Charles Leifer于2010年10月开发。ORM是一种编程方法,它允许程序员在面向对象编程语言中,在不兼容的类型系统之间转换数据。Peewee库的主要功能是为Python开发者提供一个轻量级、易用的方式来与数据库进行交互,它支持SQLite、MySQL、PostgreSQL和Cockroach等数据库。

        Peewee库的设计目标是提供一种简单、直观的方式来处理数据库操作,同时保持其灵活性,使得开发者可以根据自己的需求进行定制;Peewee库在Python社区中得到了广泛的应用和认可,成为了许多Python项目的首选数据库操作库之一。

3-2、

        PeeWee库作为一个轻量级的ORM框架,在Python社区中受到了一定的欢迎,其主要优缺点有:

3-2-1、优点
3-2-1-1、轻量级

        PeeWee占用资源少,非常适合小型应用、原型设计或快速开发场景,它易于集成到各种Python项目中,不会给项目带来过多的依赖和复杂性。

3-2-1-2、简单易用

        PeeWee提供了简洁而直观的API,使得与数据库进行交互变得简单和直观,它有很好的文档和示例,便于开发人员快速上手。对于初学者来说,使用PeeWee可以更容易地理解和掌握ORM的概念和用法。

3-2-1-3、支持多种数据库后端

        PeeWee支持多种常见的数据库后端,如SQLite、MySQL、PostgreSQL等,这使得开发人员可以根据项目需求选择适合的数据库,提高了项目的灵活性。

3-2-1-4、良好的性能

        PeeWee在处理大量数据时表现出色,具有良好的性能,这使得它在处理复杂数据库操作时能够保持较高的效率。

3-2-1-5、与Django/Flask的集成

        PeeWee可以与Django或Flask等Web框架集成,提供了更大的灵活性。虽然这些框架都提供了自己的ORM,但PeeWee的集成使得开发者可以根据个人喜好选择使用不同的ORM。

3-2-2、缺点
3-2-2-1、不支持自动化Schema迁移

        与其他一些ORM框架相比,PeeWee不支持自动化Schema迁移,这意味着开发者需要手动编写代码来处理数据库表结构的变更,这可能会增加一些额外的工作量。

3-2-2-2、社区支持相对较少

        与其他流行的ORM框架(如Django ORM、SQLAlchemy等)相比,PeeWee的社区支持相对较少,这可能会使得在遇到问题时难以找到解决方案或获取帮助。

3-2-2-3、功能相对较少

        虽然PeeWee提供了基本的ORM功能,但与其他一些功能更丰富的ORM框架相比,它的功能相对较少,这可能会限制它在一些复杂项目中的应用。

        注意,以上优缺点是基于一般情况的概述,并不能完全代表所有使用PeeWee库的项目和开发者都会遇到相同的问题,在选择使用PeeWee之前,建议根据项目需求和个人偏好进行权衡和评估。

3-3、功能

        Peewee库是一个轻量级的Python对象关系映射(ORM)库,用于在Python应用程序中与数据库进行交互,它提供了许多有用的功能,使数据库操作变得更加简单和高效。以下是Peewee库的主要功能:

3-3-1、定义数据库模型

        使用Peewee库,你可以通过定义Python类来定义数据库中的表结构和字段,这使得数据结构和关系更容易管理,同时也提高了代码的可读性和可维护性。


3-3-2、数据库连接和管理

        Peewee提供了用于连接和管理数据库的功能,你可以指定数据库引擎、主机、端口、用户名、密码等信息来连接到数据库,一旦连接建立,你就可以执行各种数据库操作。

3-3-3、执行CRUD操作

        Peewee提供了用于执行创建(Create)、读取(Read)、更新(Update)和删除(Delete)操作的方法,你可以使用这些方法轻松地插入新数据、查询数据、更新数据和删除数据。

3-3-4、强大的查询构建器

        Peewee提供了一个强大的查询构建器,允许你以自然的方式构建复杂的数据库查询,你可以使用条件、排序、限制和连接等操作来精确地获取所需的数据,这使得查询过程更加直观和易于理解。

3-3-5、支持多种数据库后端

        Peewee支持多种关系型数据库后端,包括SQLite、MySQL、PostgreSQL等,这使得你可以根据项目需求选择适合的数据库,同时也为数据库的迁移和扩展提供了方便。

3-3-6、数据迁移

        Peewee支持数据库迁移,能够轻松地更新数据库模型和结构,这使得在数据库模式发生变化时,能够轻松地更新数据库并保持数据的完整性。

3-3-7、性能优化

        Peewee经过精心设计,以确保在处理大量数据时也能保持高性能,它采用了多种优化策略,如缓存查询结果、减少数据库访问次数等,以提高数据库操作的效率。

        除了上述主要功能外,Peewee还提供了其他一些有用的功能,如事务管理、关系处理、索引和约束等,这些功能使得Peewee成为一个功能强大且易于使用的工具,适用于各种类型的Python项目。

4、SQLAlchemy

4-1、由来

        SQLAlchemy是Python编程语言下的一款开源软件,由迈克尔·拜尔(Michael Bayer)等人开发,它首次发行于2006年2月,并迅速成为Python社区中最广泛使用的ORM(对象关系映射)工具之一。

        SQLAlchemy的主要目标是采用简单的Python语言,为高效和高性能的数据库访问设计,实现完整的企业级持久模型,通过SQLAlchemy,用户能够轻松地连接到各种关系型数据库(如MySQL),并对其中的数据表结构进行操作,包括创建、修改和查询数据库表。此外,SQLAlchemy还提供了丰富的数据类型和操作方法,方便用户以面向对象的方式操作数据库中的数据。

        总之,SQLAlchemy作为Python编程语言下的一款重要第三方库,其由来可以追溯到其创始人迈克尔·拜尔等人的努力,以及Python社区对高效、高性能数据库访问需求的不断追求。

4-2、

        SQLAlchemy库作为Python中广泛使用的对象关系映射(ORM)工具,其主要的优缺点有:

4-2-1、优点
4-2-1-1、易用性

        SQLAlchemy提供了简洁易懂的API,使得开发者能够轻松地定义数据库模型、执行查询和更新操作。

4-2-1-2、灵活性

        SQLAlchemy支持多种数据库后端,包括MySQL、PostgreSQL、SQLite等,并提供了大量的配置选项,允许开发者根据自己的需求定制数据库访问层。

4-2-1-3、对象关系映射(ORM)

        ORM使得开发者能够用Python对象直接表示和操作数据库中的记录,无需编写大量的SQL语句,这大大提高了开发效率,并降低了出错的可能性。

4-2-1-4、查询构建器

        SQLAlchemy提供了强大的查询构建器,允许开发者以Pythonic的方式构建复杂的SQL查询,这使得查询语句更加直观、易于理解和维护。

4-2-1-5、事务管理

        SQLAlchemy内置了事务管理机制,使得开发者能够轻松地管理数据库事务,确保数据的完整性和一致性。

4-2-1-6、性能优化

        虽然ORM通常被认为在性能上不如原生SQL,但SQLAlchemy通过缓存、延迟加载等机制,以及支持原生SQL语句的执行,可以在一定程度上优化性能。

4-2-1-7、扩展性

        SQLAlchemy支持扩展和插件机制,允许开发者根据自己的需求定制和扩展其功能。

4-2-2、缺点
4-2-2-1、学习曲线

        虽然SQLAlchemy提供了丰富的功能和灵活的配置选项,但这也意味着它的API较为复杂,学习曲线相对陡峭,初学者可能需要花费一些时间来熟悉和掌握其用法。

4-2-2-2、性能开销

        与原生SQL相比,ORM通常会有一定的性能开销,这是因为ORM需要在Python对象和数据库记录之间进行映射和转换,对于大数据量和高并发的应用场景,这可能会成为瓶颈。

4-2-2-3、调试困难

        由于ORM将数据库操作封装在Python对象中,因此在调试时可能会遇到一些困难,开发者需要熟悉ORM的内部机制和SQL语句的执行过程,以便找到并解决问题。

4-2-2-4、代码冗余

        在某些情况下,使用ORM可能会导致代码冗余。例如,当需要频繁执行相同的SQL查询时,直接使用原生SQL语句可能更加简洁和高效。

        注意,以上优缺点并非绝对,它们可能会因具体的应用场景和团队需求而有所不同,在选择是否使用SQLAlchemy时,需要根据项目的实际情况进行权衡和考虑。

4-3、功能

        SQLAlchemy库是一个功能强大的SQL工具包和对象关系映射(ORM)系统,用于Python应用程序,它提供了一套完整的解决方案,使开发者能够使用Python类和数据库表进行交互,而无需编写大量的SQL代码,其主要功能有:

4-3-1、对象关系映射(ORM)

        SQLAlchemy允许开发者定义Python类,这些类会映射到数据库中的表,开发者可以使用Python类的实例来代表数据库表中的行,并通过这些实例来查询、更新和删除数据。ORM系统还负责处理Python数据类型和数据库数据类型之间的转换。

4-3-2、查询构建器

        SQLAlchemy提供了一个查询构建器API,允许开发者以Pythonic的方式构建SQL查询,查询可以包括各种条件、排序、分组、连接等操作,并且可以通过链式调用方法来构建复杂的查询。

4-3-3、关系管理

        SQLAlchemy支持数据库中的各种关系,如一对一、一对多和多对多关系,开发者可以在Python类之间定义这些关系,并通过这些关系来执行跨表的查询和更新操作。

4-3-4、会话管理

        SQLAlchemy使用会话(Session)对象来管理数据库连接和事务,会话对象提供了一个暂存区,用于存储待提交的更改,并允许开发者在单个事务中执行多个操作,提交会话将更改应用到数据库,而回滚会话将撤销待提交的更改。

4-3-5、数据库迁移

        SQLAlchemy提供了Alembic这样的扩展库,用于处理数据库迁移,开发者可以使用Alembic来定义数据库模型的版本,并在模型发生更改时生成和执行迁移脚本,以更新数据库结构。

4-3-6、原生SQL支持

        虽然SQLAlchemy的主要目标是提供ORM功能,但它也支持直接执行原生SQL语句,开发者可以使用SQLAlchemy的引擎(Engine)对象来执行SQL语句,并获取结果。

4-3-7、连接池

        SQLAlchemy提供了连接池功能,用于管理和复用数据库连接,连接池可以提高应用程序的性能和响应速度,并减少与数据库建立连接的开销。

4-3-8、事件监听

        SQLAlchemy支持事件监听机制,允许开发者在数据库操作的不同阶段注册回调函数,这些回调函数可以在对象加载、保存、删除等操作时执行自定义逻辑。

4-3-9、扩展性

        SQLAlchemy具有高度的可扩展性,支持各种扩展和插件,开发者可以使用扩展库来增强SQLAlchemy的功能,如支持全文搜索、JSON字段等。

4-3-10、文档和社区支持

        SQLAlchemy拥有完善的文档和活跃的社区支持,开发者可以方便地查找解决问题的方法和与其他开发者交流经验。

二、推荐阅读

1、Python函数之旅

2、Python算法之旅

3、博客个人主页

  • 29
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
好的,我可以为您讲解一下如何使用PythonMySQL来实现通讯录程序。 首先,需要安装MySQL数据库PythonMySQL驱动程序。在安装MySQL时,需要设置一个用户名和密码来访问数据库。在Python中,可以使用PyMySQLmysql-connector-python这两个库来连接MySQL数据库。 接下来,可以创建一个名为"contacts"的数据库,其中包含一个名为"person"的表,用于存储联系人的信息。表中可以包含姓名、电话号码、电子邮件地址等字段。 在Python中,可以使用MySQL的连接对象来连接数据库,然后使用游标对象来执行SQL查询和更新操作。以下是一个示例代码: ```python import pymysql # 连接MySQL数据库 conn = pymysql.connect(host='localhost', user='username', password='password', database='contacts') # 创建游标对象 cursor = conn.cursor() # 查询所有联系人 cursor.execute('SELECT * FROM person') contacts = cursor.fetchall() for contact in contacts: print(contact) # 插入新的联系人 name = input('请输入姓名:') phone = input('请输入电话号码:') email = input('请输入电子邮件地址:') cursor.execute('INSERT INTO person(name, phone, email) VALUES(%s, %s, %s)', (name, phone, email)) conn.commit() # 关闭游标和连接 cursor.close() conn.close() ``` 以上代码连接到名为"contacts"的数据库,查询并打印所有联系人的信息,然后插入一个新的联系人。注意,插入操作需要使用占位符来避免SQL注入攻击。 希望这个示例代码能够帮助您开始使用PythonMySQL开发通讯录程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

神奇夜光杯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值