“2019年3月”存档文章有25

MySQLdb 异常处理

程序在生产环境中运行,具体有没有异常,有没有什么问题,都需要及时了解。生产环境中外部的多变,有一些是在编码过程中很难预料到的,所以需要通过异常捕获,来了解程序的运行状况。在数据库保存数据当中,会产生很多异常:数据长度超限、网络异常、用户恶意提交、字符问题等都会产生异常。为了捕捉在使用MySQLdb的过程中产生的一些异常与警告,通用代码如下:# SQL 插入语句 sql = "INSERT INT...

MySQLdb 自动处理关闭连接

在数据库操作中,打开了数据库连接,一定要及时关闭。如果不及时关闭,导致连接池用完,导致数据库连接失败。所以在使用MySQLdb的时候,自动处理连接关闭很有必要。下面是通用连接关闭的方式:from contextlib import closing with closing(Conn_Config().Conn_MySQL()) as conn_mysql: with closing...

MySQLdb连接数据库封装

最近在大量使用MySQLdb,有一些公共代码总结记录,方便以后其他项目使用。在使用MySQLdb库的时候,首先是需要连接数据库,对连接数据库部分做一个封装,方便以后调用。具体代码如下:# !/usr/bin/env python # -*- coding: utf-8 -*- import MySQLdb class Conn_Config: """MySQL连接""" ...

AttributeError: 'Connection' object has no attribute 'execute'

在使用MySQLdb的时候,查询数据,出现了如下错误:AttributeError: 'Connection' object has no attribute 'execute'具体代码如下:# 数据库保存原始数据 mysql_conn = Conn_Config().Conn_MySQL() with closing(Conn_Config().Conn_MySQL()) as cur: ...

commands out of sync you can't run this command now python

最近在使用MySQLdb插入数据的时候,报如下错误:commands out of sync you can't run this command now python(2014, "Commands out of sync; you can't run this command now")具体截图如下:可以看到有人通过恶意提交,将一部分SQL语句注释掉了,本来一次执行完成的语句,分成两次执行。不...

execute command denied to user

在使用MySQLdb保存数据的时候,出现了如下错误:_mysql_exceptions.OperationalError: (1370, "execute command denied to user 'user'@'%' for routine 'database.pg_sleep'")出现这个错误的原因:是没有给表对应的用户赋予相应的权限,这个是没有赋予execute权限。解决方案:用户对应的...

MySQLdb except 的捕捉方式

最近使用Python写的后台代码出了一点问题,在排查的时候,定位到数据存储存在异常,但是使用的是except方式,并没有看出来是哪里存在什么样的异常,导致排除异常很棘手。具体代码如下:try: # 执行sql语句 cursor.execute(sql) # 提交到数据库执行 db.commit() except: # 发生错误时回滚 d...

TypeError: clean_counters() missing 1 required positional argument: 'self'

最近在调用其他方法的时候报如下错误:TypeError: clean_counters() missing 1 required positional argument: 'self'具体调用方式:from ..Save_Redis_Original_Data import Save_Redis_Original_Data Save_Redis_Original_Data.clean_count...