zoukankan      html  css  js  c++  java
  • python pymysql模块

    pymysql 是一个纯 Python 实现的 MySQL 客户端操作库今天说一下用pymysql实现对数据库的基本增删改查

    首先需要连接数据库

    import pymysql
    
    conn=pymysql.connect(host='127.0.0.1',user='root',password='123',database='ku1',charset='utf8')
    打开数据库连接
    cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)
    创建一个数据库连接对象cursor=pymysql.cursors.DictCursor表示返回的数据用字典表示列明和数据的对应关系
    sql='select * from user'
    sql操作命令
    cursor.execute(sql)
    用execute方法执行sql命令 ps:executemany可以执行多条命令
    res=cursor.fetchone()
    使用fetchone获得一条返回结果,ps:fetchall可以以列表的形式拿到返回的所有结果
    print(res)

    在使用过程中sql操作指令大都是拼接出来的会有sql注入的风险在这里我们同过转义的方法来规避

    import  pymysql
    
    # 连接mysql服务器
    username = input('username:')
    pwd = input('password:')
    
    ### 对用户输入的值进行转义
    
    conn = pymysql.connect(host='localhost', user='root', password='123',database='ku', charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    
    sql = "select * from student where sname = %s and sid = %s"
    
    cursor.execute(sql,(username, pwd))
    把重要信息赋值的地方放在execute里面是防止sql注入的方法之一 res
    = cursor.fetchone() print(res) if res: print('登录成功') else: print('登录失败') cursor.close() conn.close()

    对数据进行增删改之后需要提交数据后对数据库的操作才会生效

    import random
    
    import  pymysql,time
    
    # 连接mysql服务器
    
    conn = pymysql.connect(host='localhost', user='root', password='123',database='db1', charset='utf8')
    cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
    # sql = "delete from t7 where id=%s"
    
    sql = "insert into t12 (name, email) values (%s, %s)"
    数据库的操作指令和数据库端的完全一样
     插入多条
    data = []
    for i in range(3000000):
        num = random.randrange(0,3000000)
        data.append(('root'+str(num), 'root'+str(num)+'@qq.com'))
    
    cursor.executemany(sql, data)
    
    conn.commit()
    提交操作
    
    cursor.close()
    conn.close()关闭数据库连接
  • 相关阅读:
    将hdfs上的数据上传到ftp服务器(是ftp不是sftpf服务器)的脚本
    vue+elementui更换本地字体
    ps ef|grep详解
    ez_setup.py 下载后怎么安装
    Linux下4个查找命令which、whereis、locate、find的总结
    WIN7 + IIS7 Service Unavailable HTTP Error 503. The service is unavailable.
    Asp.Net Core混合使用cookie和JwtBearer认证方案
    SpringBoot2.6中使用springfox报documentationPluginsBootstrapper问题
    React笔记 #02# jsx语法规则&动态列表初步
    Hexo笔记 #01# 初始化&部署&换主题&写文
  • 原文地址:https://www.cnblogs.com/duGD/p/11088004.html
Copyright © 2011-2022 走看看