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
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 sauvegardematureplus_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 sauvegardematureminus_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ôtsmature--.
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--';