zoukankan      html  css  js  c++  java
  • python连接mysql

    1.用python连接mysql实现登陆(存在sql注入危险)

    代码块
    import pymysql #导入模块
    
    username=input('请输入用户名:')
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()
    
    sql="select * from info where username='%s'"%username
    
    print(sql)
    
    res=cur.execute(sql)  #执行
    
    cur.close()    #关闭游标
    
    conn.close()   #关闭连接
    
    if res:
    
        print('查询成功')
    
    else:
    
        print('登陆失败')
    

    2用python连接mysql实现登陆方式二(不存在sql注入危险)

    代码块
    import pymysql #导入模块
    
    username=input('请输入用户名:')
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()
    
    sql="select * from info where username=%s"
    
    print(sql)
    
    res=cur.execute(sql,[username]) #用这种方法执行SQL可以匹配过滤敏感字符,防止SQL注入
    
    cur.close()
    
    conn.close()
    
    if res:
    
        print('查询成功')
    
    else:
    
        print('登陆失败')
    

    3 利用python 在mysql插入数据(插)

    代码块
    
    # .利用python 在mysql插入数据
    
    import pymysql #导入模块
    
    user=input('请输入用户名:')
    
    pwd=int(input('请输入密码:'))
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()
    
    sql="insert into info(username,password) values (%s,%s)"
    
    print(sql)
    
    res=cur.execute(sql,[user,pwd])
    
    conn.commit()#插入,更新,删除一定要提交,否则没用
    
    cur.close()
    
    conn.close()
    
    if res:
        print('插入成功')
    else:
        print('插入失败')
    

    4 利用python 在mysql查询数据(查)

    代码块
    
    import pymysql #导入模块
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()   #根据连接来创建游标
    
    sql='select * from info '
    
    print(sql)   #select * from info
    
    res=cur.execute(sql)  #执行,返回成功的条数
    
    print(res)    #3
    
    #查询所有数据
    row_all=cur.fetchall()
    
    print(row_all)   #((1, 'wangsiyu', 123456), (2, 'alex', 654321), (3, 'mayun', 123456))
    
    # 查询1条数据
    row_one=cur.fetchone()   #(1, 'wangsiyu', 123456)    查询游标后的那条数据
    
    #查询多条数据
    row_many=cur.fetchmany(2)
    print(row_many)
    
    print(row_one)
    
    cur.close()    #关闭游标
    
    conn.close()   #关闭连接
    
    if res:
    
        print('查询成功')
    
    else:
    
        print('登陆失败')
    

    5 利用python 在mysql查询数据,再更新数据(改)

    代码块
    import pymysql #导入模块
    
    user=input('请输入用户名:')
    
    pwd=int(input('请输入原密码:'))
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()
    
    sql="select * from info where username=%s and password =%s"
    
    res=cur.execute(sql,[user,pwd])
    
    if res:
        new_pwd=int(input('请输入新密码'))
    
        sql_1="update info set password=%s where username=%s"
    
        res_1=cur.execute(sql_1,[new_pwd,user])
    
        conn.commit()  # 插入,更新,删除一定要提交,否则没用,查询不需要。
    else:
        print('用户名不存在或者密码错误')
    
    if res_1:
        print('密码修改成功')
    
    else:
        print('修改密码失败')
    
    cur.close()
    
    conn.close()
    
    

    利用python在mysql中删除数据(删)

    代码块
    import pymysql #导入模块
    
    username=input('请输入要删除的用户名:')
    
    #创建连接
    
    conn=pymysql.connect(
    
        host='localhost',
    
        user='root',
    
        password='wsywsy142857',
    
        database='ec14',
    
        port=3306
    
    )
    
    #创建游标
    
    cur=conn.cursor()
    
    sql="delete  from info where username=%s"
    
    res=cur.execute(sql,[username]) #用这种方法执行SQL可以匹配过滤敏感字符,防止SQL注入
    
    conn.commit()   #增,删,改一定要有这个方法。
    
    cur.close()
    
    conn.close()
    
    if res:
    
        print('删除成功')
    
    else:
    
        print('删除失败')
    

    别跑,点个赞再走

  • 相关阅读:
    elk2
    elk
    skywalking学习ppt
    Spring Boot]SpringBoot四大神器之Actuator
    黑马程序员spring data jpa 2019年第一版本
    css总结7:盒子模型理解
    css总结5:px、em、rem区别介绍
    css总结4:input 去掉外边框,placeholder的字体颜色、字号
    css总结3:Flex 布局教程:Flex-demos(转)
    css总结2:Flex 布局教程:Flex 语法(转)
  • 原文地址:https://www.cnblogs.com/hellosiyu/p/12489935.html
Copyright © 2011-2022 走看看