1
我有一个bash shell脚本。我有一个psql复制命令,它从数据库中捕获了一些数据行。来自数据库的数据是我将在bash脚本中使用的实际sql语句。我把这些语句放在数据库中,因为它们长度不一,我希望能够动态地调用某些语句。将查询结果推送到阵列
1)我不确定在复制语句中使用的分隔符。我不能使用逗号或管道,因为它们在来自数据库的数据中。我已经尝试过几个随机字符,因为这些字符不在我的数据库中,但副本有一个合适的字符,只需要一个ASCII字符。
此外复杂的事情,我需要得到query_name和query_string为每一行。
这是我目前拥有的。我得到的所有副本中的数据不错,但现在我只是想将数据推到一个数组,这样我就可以遍历它以后:
q="copy (select query_name,query_string from query where active=1)
to stdout delimiter ','"
statements=$(psql -d ${db_name} -c "${q}")
statements_split=(`echo ${statements//,/ }`)
echo ${statements_split[0]};