【Python从入门到进阶】Mysql防止SQL注入及ORM库简化操作
    		       		warning:
    		            这篇文章距离上次修改已过450天,其中的内容可能已经有所变动。
    		        
        		                
                
from pymysql import connect
 
# 使用pymysql连接数据库并执行查询操作,防止SQL注入
def safe_query(sql, params):
    # 连接数据库
    connection = connect(host='localhost',
                         user='user',
                         password='password',
                         database='dbname',
                         charset='utf8mb4',
                         cursorclass=DictCursor)
    
    try:
        with connection.cursor() as cursor:
            # 执行SQL语句
            cursor.execute(sql, params)
            # 获取所有结果
            result = cursor.fetchall()
            print(result)
    finally:
        connection.close()
 
# 示例SQL和参数
sql = "SELECT * FROM some_table WHERE column = %s;"
params = ('value',)
 
safe_query(sql, params)这段代码使用了pymysql库来安全地执行SQL查询,防止了SQL注入攻击。通过使用参数化的查询,用户提供的值被安全地传递给数据库,不被解释为SQL代码的一部分。这是一个良好的编程习惯,应该在开发过程中被广泛采用。
评论已关闭