How to conditionally stop a psql script (based on a variable value)?
15
votes
7
answers
22401
views
Let's consider the following example (from the start of a psql script):
\c :db_to_run_on
TRUNCATE the_most_important_table;
-- tried to avoid similarities to anything that exists out there
Now if it is run this by the command
psql [connection details] -v db_to_run_on=\'dev_database\'
then it just runs and the user is happy. But what if (s)he decides to specify
-v db_to_run_on=production_database
? (Let's assume that this can happen, just like people run rm -rf / # don't try this at home!!!
ocassionally.) Hopefully there is a fresh backup of that table...
So the question arises: how to check the variables passed to a script and stop further processing based on their value?
Asked by András Váczi
(31808 rep)
Sep 19, 2012, 08:32 AM
Last activity: Mar 4, 2025, 10:57 PM
Last activity: Mar 4, 2025, 10:57 PM