sql >> Database teknologi >  >> RDS >> PostgreSQL

Variabel, der indeholder antallet af rækker, der er påvirket af tidligere SLET? (i en funktion)

I Oracle PL/SQL er systemvariablen til at gemme antallet af slettede/indsatte/opdaterede rækker:

SQL%ROWCOUNT

Efter en DELETE / INSERT / UPDATE-sætning, og FØR DU KOMMITTERER, kan du gemme SQL%ROWCOUNT i en variabel af typen NUMBER. Husk, at COMMIT eller ROLLBACK nulstilles til NUL værdien af ​​SQL%ROWCOUNT, så du skal kopiere SQL%ROWCOUNT-værdien i en variabel FØR COMMIT eller ROLLBACK.

Eksempel:

BEGIN
   DECLARE
      affected_rows   NUMBER DEFAULT 0;
   BEGIN
      DELETE FROM feeds_item
            WHERE shareurl = re1;

      affected_rows := SQL%ROWCOUNT;
      DBMS_OUTPUT.
       put_line (
            'This DELETE would affect '
         || affected_rows
         || ' records in FEEDS_ITEM table.');
      ROLLBACK;
   END;
END;

Jeg har også fundet denne interessante LØSNING (kilde:http://markmail.org/message/grqap2pncqd6w3sp )



  1. Kan ikke importere MySQLdb-modul i Python

  2. Django-indstillinger konfigurerer databaser med to motorer

  3. Eksporter en stor MySQL-tabel som flere mindre filer

  4. Bevar rækkefølgen af ​​distinkt inde i string_agg