python连接mysql

Posted 黑面书生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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('删除失败')

技术图片

以上是关于python连接mysql的主要内容,如果未能解决你的问题,请参考以下文章

Python之如何优雅的重试

Python连接MySQL的实例代码

python连接MySQL

Python连接SQLServer2000或连接mysql代码示例

这些角度电子邮件指令代码片段如何连接

用python代码简单连接MySQL以及插入数据的两种方法