示例#1
0
文件: dbapi2.py 项目: gukoff/pamagent
 def __exit__(self, exc, value, tb, *args, **kwargs):
     transaction = current_transaction()
     name = callable_name(self.__wrapped__.__exit__)
     with FuncWrapper(transaction, name):
         if self.is_commit_on_exit(exc, value, tb):
             with DatabaseTrace(transaction, 'COMMIT',
                                self._pam_dbapi2_module,
                                self._pam_connect_params):
                 return self.__wrapped__.__exit__(exc, value, tb)
         else:
             with DatabaseTrace(transaction, 'ROLLBACK',
                                self._pam_dbapi2_module,
                                self._pam_connect_params):
                 return self.__wrapped__.__exit__(exc, value, tb)
示例#2
0
文件: dbapi2.py 项目: gukoff/pamagent
 def executemany(self, sql, seq_of_parameters):
     transaction = current_transaction()
     try:
         parameters = seq_of_parameters[0]
     except (TypeError, IndexError):
         parameters = DEFAULT
     if parameters is not DEFAULT:
         with DatabaseTrace(transaction, sql, self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params, parameters):
             return self.__wrapped__.executemany(sql, seq_of_parameters)
     else:
         with DatabaseTrace(transaction, sql, self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params):
             return self.__wrapped__.executemany(sql, seq_of_parameters)
示例#3
0
 def commit(self):
     transaction = current_transaction()
     with DatabaseTrace(transaction,
                        'COMMIT',
                        self._pam_dbapi2_module,
                        database_name=self._pam_connect_params[0][0]):
         return self.__wrapped__.commit()
示例#4
0
 def execute(self, sql, parameters=DEFAULT):
     transaction = current_transaction()
     if parameters is not DEFAULT:
         with DatabaseTrace(transaction,
                            sql,
                            self._pam_dbapi2_module,
                            self._pam_connect_params,
                            database_name=self._pam_connect_params[0]):
             return self.__wrapped__.execute(sql, parameters)
     else:
         with DatabaseTrace(transaction,
                            sql,
                            self._pam_dbapi2_module,
                            self._pam_connect_params,
                            database_name=self._pam_connect_params[0]):
             return self.__wrapped__.execute(sql)
示例#5
0
文件: dbapi2.py 项目: gukoff/pamagent
 def callproc(self, procedure_name, parameters=DEFAULT):
     transaction = current_transaction()
     with DatabaseTrace(transaction, 'CALL %s' % procedure_name,
                        self._pam_dbapi2_module, self._pam_connect_params):
         if parameters is not DEFAULT:
             return self.__wrapped__.callproc(procedure_name, parameters)
         else:
             return self.__wrapped__.callproc(procedure_name)
示例#6
0
 def rollback(self):
     transaction = current_transaction()
     with DatabaseTrace(transaction,
                        'ROLLBACK',
                        self._pam_dbapi2_module,
                        self._pam_connect_params,
                        database_name=self._pam_connect_params[0]):
         return self.__wrapped__.rollback()
示例#7
0
 def executescript(self, sql_script):
     transaction = current_transaction()
     with DatabaseTrace(transaction,
                        sql_script,
                        self._pam_dbapi2_module,
                        self._pam_connect_params,
                        database_name=self._pam_connect_params[0]):
         return self.__wrapped__.executescript(sql_script)
示例#8
0
 def executemany(self, sql, seq_of_parameters):
     transaction = current_transaction()
     with DatabaseTrace(transaction,
                        sql,
                        self._pam_dbapi2_module,
                        self._pam_connect_params,
                        database_name=self._pam_connect_params[0]):
         return self.__wrapped__.executemany(sql, seq_of_parameters)
示例#9
0
 def execute(self, sql, parameters=DEFAULT, *args, **kwargs):
     transaction = current_transaction()
     if parameters is not DEFAULT:
         with DatabaseTrace(transaction, sql, self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params, parameters,
                            (args, kwargs)):
             return self.__wrapped__.execute(sql, parameters, *args,
                                             **kwargs)
     else:
         with DatabaseTrace(transaction,
                            sql,
                            self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params,
                            None, (args, kwargs),
                            database_name=self._pam_connect_params[0][0]):
             return self.__wrapped__.execute(sql, **kwargs)
示例#10
0
文件: dbapi2.py 项目: gukoff/pamagent
 def commit(self):
     transaction = current_transaction()
     with DatabaseTrace(
             transaction,
             'COMMIT',
             self._pam_dbapi2_module,
             database_name=self._pam_connect_params[1]['database'],
             host=self._pam_connect_params[1].get('host'),
             port=self._pam_connect_params[1].get('port')):
         return self.__wrapped__.commit()
示例#11
0
文件: dbapi2.py 项目: gukoff/pamagent
 def rollback(self):
     transaction = current_transaction()
     with DatabaseTrace(
             transaction,
             'ROLLBACK',
             self._pam_dbapi2_module,
             self._pam_connect_params,
             database_name=self._pam_connect_params[1]['database'],
             host=self._pam_connect_params[1].get('host'),
             port=self._pam_connect_params[1].get('port')):
         return self.__wrapped__.rollback()
示例#12
0
文件: dbapi2.py 项目: gukoff/pamagent
 def execute(self, sql, parameters=DEFAULT, *args, **kwargs):
     transaction = current_transaction()
     if parameters is not DEFAULT:
         with DatabaseTrace(transaction,
                            sql,
                            self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params,
                            sql_parameters=parameters,
                            host=self._pam_connect_params[1].get('host'),
                            port=self._pam_connect_params[1].get('port')):
             return self.__wrapped__.execute(sql, parameters, *args,
                                             **kwargs)
     else:
         with DatabaseTrace(transaction,
                            sql,
                            self._pam_dbapi2_module,
                            self._pam_connect_params,
                            self._pam_cursor_params,
                            host=self._pam_connect_params[1].get('host'),
                            port=self._pam_connect_params[1].get('port')):
             return self.__wrapped__.execute(sql, **kwargs)