sql >> Database >  >> RDS >> PostgreSQL

PostgreSQL - hoe te bepalen of een transactie actief is?

Postgres draait PL/pgSQL binnen de transactie. U kunt de transactie dus niet van binnenuit beheren PL/pgSQL . De code ziet er als volgt uit:

begin;
  select plpgsql_fn();
  do '/*same any plpgsql*/';
end;

Dus antwoord op je vraag:

Als u PL/pgSQL . heeft ATM draait, je hebt je transactie actief ATM...

Natuurlijk kun je een trucje doen, zoals het starten/beëindigen van werk via dblink of zo. maar dan kun je select txid_current(); . aanvinken over de dblink succesvol...



  1. Oracle-datumverschil om het aantal jaren te krijgen

  2. PHP-tekenreeksvariabele in WHERE-component MySQL

  3. Optimaliseer de prestaties van MySQL/MariaDB met de MySQLTunner-tool

  4. Python's MySqlDB krijgt geen bijgewerkte rij