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]};