Sample Header Ad - 728x90

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