python操作数据库

Posted guyouyin123

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python操作数据库相关的知识,希望对你有一定的参考价值。

一、python操作数据库

import pymysql

conn = pymysql.connect(
    host = '127.0.0.1',
    port = 3306,
    user = 'root',
    password = '123',
    database = 'jeff',
    charset = 'utf8'
)

cursor = conn.cursor(pymysql.cursors.DictCursor)  # 产生游标对象,以字典的形式返回
sql = 'select * from teacher'
cursor.execute(sql)  # 执行传入的sql语句
# print(cursor.fetchone())  # 只获取一条数据
# print(cursor.fetchone())  # 只获取一条数据
# print(cursor.fetchone())  # 只获取一条数据
# print(cursor.fetchone())  # 只获取一条数据
# cursor.scroll(2,'absolute')  # 控制光标移动   absolute相对于其实位置 往后移动几位
# cursor.scroll(1,'relative')  # relative相对于当前位置 往后移动几位
print(cursor.fetchall())  # 获取所有的数据  返回的结果是一个列表

二、数据注入问题

import pymysql
conn = pymysql.connect(
    host = '127.0.0.1',
    port = 3306,
    user = 'root',
    password = '123',
    database = 'jeff',
    charset = 'utf8',
    autocommit = True     # 这个参数配置完成后  增删改操作都不需要在手动加conn.commit了
)

cursor = conn.cursor(pymysql.cursors.DictCursor)


username = input('输入用户名>>>:')
password = input('输入密码>>>:')

sql = 'select * from user where name = %s and password = %s'
res = cursor.execute(sql, (username, password))  # 能够帮你自动过滤特殊符号 避免sql注入的问题
if res :
    print(cursor.fetchall())
else:
    print('用户名或密码错误')

以上是关于python操作数据库的主要内容,如果未能解决你的问题,请参考以下文章

redis python 操作 Python操作Redis数据库

redis python 操作 Python操作Redis数据库

python操作数据库

Python操作数据库之 MySQL

python--操作数据库

python--操作数据库