• python数据库——Mysql


    一、pymysql库

            要使用Python操作MySQL数据库,可以使用PyMySQL库。PyMySQL是一个纯Python编写的MySQL客户端库,可以在Python程序中进行MySQL数据库的连接、查询、插入等操作。

            与之相似的还有mysql官方提供的MySQL Connector/Python也可以实现类似功能。它们的区别主要在以下方面:

    • pymysql库是一个纯Python实现的库,可以直接使用pip安装。
    • MySQL Connector/Python是MySQL官方提供的Python驱动程序,是使用C编写的,提供了更高的性能和更多的功能选项。

            在本文中使用pymysql进行操作

    使用前需要先安装pymysql:

    pip install pymysql

    二、数据库连接

    python对数据库进行操作前需要使用pymysql库中的connect函数连接到对应的数据库

    1. import pymysql
    2. # 连接到MySQL数据库
    3. db = pymysql.connect(
    4. host='localhost', # 数据库地址
    5. port=3306, # 端口号,默认为3306
    6. user='root', # 用户名
    7. password='password', # 密码
    8. database='testdb' # 数据库名称
    9. )

    三、游标对象

            在连接到数据库以后,我们还需要一个游标对象用于执行SQL语句来 控制数据库。

    创建游标对象:

    cusor = db.cusor()

    可以使用游标对象的以下函数进行数据库操作:

    1. execute(sql, params=None): 执行SQL语句。可以通过参数传递SQL语句以及需要绑定的参数。返回值为受影响的行数。

    2. executemany(sql, seq_of_params): 批量执行SQL语句。可以通过参数传递SQL语句以及需要绑定的参数序列。返回值为受影响的行数。

    3. fetchone(): 获取查询结果的下一行。返回值为一个元组,包含查询结果的一行数据。

    4. fetchmany(size=None): 获取查询结果的多行。可以通过参数指定获取的行数,默认为游标的arraysize属性。返回值为一个包含多行数据的列表。

    5. fetchall(): 获取查询结果的所有行。返回值为一个包含所有行数据的列表。

    6. scroll(value, mode=‘relative’): 在查询结果中移动游标的位置。可以通过参数指定移动的行数以及移动的方式。mode参数可以是’relative’(相对移动),‘absolute’(绝对移动)或’first’(移到第一行)。

    7. close(): 关闭游标。关闭之后,游标对象将不再可用。

    8. rowcount: 返回最近一次execute()方法执行后受影响的行数。

    9. description: 返回查询结果的元数据,包含查询结果的列名、数据类型等信息。

    四、创建数据库表

    1. mport pymysql
    2. # 连接数据库
    3. conn = pymysql.connect(
    4. host='localhost', # 数据库地址
    5. user='root', # 数据库用户名
    6. password='password', # 数据库密码
    7. db='test_db' # 数据库名称
    8. )
    9. # 创建游标对象
    10. cursor = conn.cursor()
    11. # 创建表的SQL语句
    12. create_table_sql = '''
    13. CREATE TABLE IF NOT EXISTS students (
    14. id INT AUTO_INCREMENT PRIMARY KEY,
    15. name VARCHAR(100) NOT NULL,
    16. age INT
    17. )
    18. '''
    19. # 执行SQL语句
    20. cursor.execute(create_table_sql)
    21. # 提交事务
    22. conn.commit()
    23. # 关闭游标和连接
    24. cursor.close()
    25. conn.close()

    五、增删查改

    1. import pymysql
    2. # 创建数据库连接
    3. conn = pymysql.connect(host='localhost', user='root', password='password', database='testdb')
    4. # 创建游标对象
    5. cursor = conn.cursor()
    6. # 执行SQL语句,创建表
    7. create_table_sql = '''
    8. CREATE TABLE IF NOT EXISTS users (
    9. id INT AUTO_INCREMENT PRIMARY KEY,
    10. name VARCHAR(50) NOT NULL,
    11. age INT
    12. )
    13. '''
    14. cursor.execute(create_table_sql)
    15. # 插入数据insert_sql = "INSERT INTO users (name, age) VALUES (%s, %s)"
    16. cursor.execute(insert_sql, ('Alice', 25))
    17. cursor.execute(insert_sql, ('Bob', 30))
    18. conn.commit()
    19. # 查询数据
    20. select_sql = "SELECT * FROM users"
    21. cursor.execute(select_sqlresults =.fetchall()
    22. for row in results:
    23. print(row)
    24. # 更新数据
    25. update_sql = "UPDATE users SET age = %s WHERE name = %s"
    26. cursor.execute(update_sql, (26, 'Alice'))
    27. conn.commit()
    28. # 删除数据
    29. delete_sql = "DELETE FROM users WHERE name = %s"
    30. cursor.execute(delete_sql, 'Bob')
    31. conn.commit()
    32. # 关闭游标和数据库连接
    33. cursor.close()
    34. conn.close()

  • 相关阅读:
    外网打点(信息收集)
    遥感领域最热门的研究主题介绍
    LeetCode·899.有序队列·最小表示法
    阿里云OSS(图片上传)
    设计模式-工厂方法模式
    【kafka】mac环境安装kafka
    python如何设置单线程爬虫
    企业办公新模式,随时随地云上协同!
    (下)苹果有开源,但又怎样呢?
    DSPE-PEG-TAT,磷脂-聚乙二醇-靶向穿膜肽,脂质体修饰细胞穿膜肽TAT
  • 原文地址:https://blog.csdn.net/m0_65995252/article/details/133237416