CommencezCommencez gratuitement

Points de sauvegarde et retour arrière

Poursuivons notre réflexion sur le montant des dépôts à terme qui arrivent à échéance prochainement. Ceux de plus de 250 k$ ont le plus d'impact sur les résultats observés lors du marché de 2008.

RCONHK12 (>= 250 k$) regroupe ceux qui arrivent à échéance dans les trois prochains mois et RCONHK13 (>= 250 k\() ceux qui expirent entre 3 et 12 mois. S'ils dépassent 1 M\), cela peut entraîner une pénurie de liquidités dans une banque, car il s'agit généralement de clients plus importants qui pourraient aussi retirer d'autres actifs. À l'inverse, il y a un effet positif si ces montants sont inférieurs à 500 k$.

J'ai commis quelques erreurs dans mon code en fixant la mauvaise valeur pour ceux de plus de 500 k$!

Cette activité fait partie du cours

Transactions et gestion des erreurs dans PostgreSQL

Voir le cours

Instructions de l’exercice

  • Dans une transaction, définissez FIELD48 à mature+ si le total des dépôts arrivant à échéance est inférieur à 500 k$, puis créez un point de sauvegarde matureplus_flag_set.
  • Définissez FIELD48 à mature- si le total des dépôts arrivant à échéance est entre 500 k\( et 1 M\), puis créez un point de sauvegarde matureminus_flag_set.
  • Définissez FIELD48 à mature-- si le total des dépôts arrivant à échéance est supérieur à 100 k\( (et non 1 M\)) — en « oubliant » par mégarde un 0.
  • Revenez en arrière jusqu'à juste après l'étape où nous avons défini les enregistrements mature-, puis comptez toutes les banques ayant un échéancier d'échéance de dépôts mature--.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

BEGIN;

-- Update FIELD48 to indicate a positive maturity rathing when less than $500 thousand.
UPDATE ffiec_reci 
SET ___ = '___' 
WHERE RCONHK12 + RCONHK13 < 500000;

-- Set a savepoint
SAVEPOINT ___;

-- Update FIELD48 to indicate a negative maturity rathing when between $500 thousand and $1 million.
UPDATE ffiec_reci 
___ 
WHERE RCONHK12 + RCONHK13 BETWEEN ___ AND ___;

-- Set a savepoint
SAVEPOINT ___;

-- Accidentailly update FIELD48 to indicate a double negative maturity rating when more than 100K
UPDATE ffiec_reci 
SET ___ = '___' 
WHERE RCONHK12 + RCONHK13 > 100000;

-- Rollback to before the last mistake
ROLLBACK TO ___;

-- Select count of records with a double negative indicator
SELECT count(FIELD48) 
from ffiec_reci 
WHERE FIELD48 = 'mature--';
Modifier et exécuter le code