Python学习-数据库操作

一、安装python库

复制代码
pip install mysql-connector-python


import mysql
import re

安装库并导入包

二、定义数据库连接属性:

复制代码
    conn = mysql.connector.connect(
        host='192.168.1.30',  # 替换为你的数据库主机名
        user='keyijie',  # 替换为你的数据库用户名
        password='19kyj20St08',  # 替换为你的数据库密码
        database='rcm_canteen'  # 替换为你的数据库名称
    )

定义游标对象:

复制代码
    cursor = conn.cursor()

定义sql查询语句:

复制代码
   card_id_query = f"""
        SELECT m.card_id, m.member_id, ms.phone_number, ms.name
        FROM meal_card m
        JOIN membership ms ON m.member_id = ms.id
        WHERE m.card_id = '{i}';
        """

       cursor.execute(card_id_query)

使用上述代码执行sql语句,执行之后若是想获取里面的值需要转化一下:

复制代码
        result = cursor.fetchone()

为转化之后的数据定义名称并且取出想要的值:

复制代码
        if result:
            card_id, member_id, phone_number, name = result
            phone_list.append(phone_number)
            name_list.append(name)

完整代码:

复制代码
def sql_use(card_on):
    phone_list = []
    name_list = []
    # 连接到MySQL数据库
    conn = mysql.connector.connect(
        host='192.168.1.30',  # 替换为你的数据库主机名
        user='1234',  # 替换为你的数据库用户名
        password='1234',  # 替换为你的数据库密码
        database='rcm_canteen'  # 替换为你的数据库名称
    )
    # 创建一个游标对象
    cursor = conn.cursor()
    for i in card_on:
        card_id_query = f"""
        SELECT m.card_id, m.member_id, ms.phone_number, ms.name
        FROM meal_card m
        JOIN membership ms ON m.member_id = ms.id
        WHERE m.card_id = '{i}';
        """
        cursor.execute(card_id_query)
        result = cursor.fetchone()
        if result:
            card_id, member_id, phone_number, name = result
            phone_list.append(phone_number)
            name_list.append(name)
    return phone_list, name_list
相关推荐
EnglishJun34 分钟前
ARM嵌入式学习(十四)--- IMX6ULL的I2C通信实现
arm开发·学习
_李小白1 小时前
【OSG学习笔记】Day 31: 渲染到纹理(RTT)
笔记·数码相机·学习
嵌入式小企鹅1 小时前
蓝牙学习系列(七):BLE GATT 数据模型详解
学习·蓝牙·ble·蓝牙协议栈·蓝牙开发·gatt
arvin_xiaoting1 小时前
OpenClaw学习总结_III_自动化系统_3:CronJobs详解
数据库·学习·自动化
少许极端2 小时前
算法奇妙屋(四十一)-贪心算法学习之路 8
学习·算法·贪心算法
arvin_xiaoting3 小时前
OpenClaw学习总结_III_自动化系统_2:Webhooks详解
运维·学习·自动化
不早睡不改名@3 小时前
Netty源码分析---Reactor线程模型深度解析(一)
java·笔记·学习·netty
祁白_3 小时前
Bugku:备份是一个好习惯
笔记·学习·web安全·ctf
Kang.Charles3 小时前
【新手入门】UE第一人称示例工程学习
学习
野指针YZZ4 小时前
XV6操作系统:内存学习笔记
笔记·学习