Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-10 08:39:06

0001 from pandacommon.pandalogger.PandaLogger import PandaLogger
0002 
0003 # logger
0004 _logger = PandaLogger().getLogger("SQLDumper")
0005 
0006 
0007 class SQLDumper(object):
0008     def __init__(self, cur):
0009         self.cursor = cur
0010 
0011     def __iter__(self):
0012         return self.cursor.__iter__()
0013 
0014     def next(self):
0015         return self.cursor.next()
0016 
0017     def my_execute(self, sql, var=None):
0018         if var is None:
0019             var = {}
0020         _logger.debug(f"SQL={sql} var={str(var)}")
0021         return self.cursor.execute(sql, var)
0022 
0023     def my_executemany(self, sql, vars=None):
0024         if vars is None:
0025             vars = []
0026         _logger.debug(f"SQL_many={sql} var_many={str(vars)}")
0027         return self.cursor.executemany(sql, vars)
0028 
0029     def __getattribute__(self, name):
0030         if name == "execute":
0031             return object.__getattribute__(self, "my_execute")
0032         elif name == "executemany":
0033             return object.__getattribute__(self, "my_executemany")
0034         elif name in ["cursor", "__iter__", "next"]:
0035             return object.__getattribute__(self, name)
0036         else:
0037             return getattr(self.cursor, name)