我使用以下命令授予 postgres db。这是工作。
for tbl in `psql -qAt -c "select sequence_name from information_schema.sequences where sequence_schema = 'public';" performanceeyedev` ; do psql -c "alter table $tbl owner to prodteam" performanceeyedev ; done
我为授予 postgres db 编写了以下脚本。但它不起作用。
DB = 'performanceeyedev';
OWNER = 'prodteam';
for tbl in `psql -qAt -c "select sequence_name from information_schema.sequences where sequence_schema = 'public';" $DB` ;
do psql -c "alter table $tbl owner to $OWNER" $DB ; done
for tbl in `psql -qAt -c "select table_name from information_schema.views where table_schema = 'public';" $DB` ;
do psql -c "alter seq $tbl owner to $OWNER" $DB ; done
它产生以下结果
./grant.sh: line 1: DB: command not found
./grant.sh: line 2: OWNER: command not found
ERROR: syntax error at end of input
LINE 1: alter table dir_destinations_dir_dest_id_seq owner to
^
ERROR: syntax error at end of input
LINE 1: alter table dir_types_dir_type_id_seq owner to
^
ERROR: syntax error at end of input
LINE 1: alter table dir_specialities_dir_sp_id_seq owner to
^
ERROR: syntax error at end of input
LINE 1: alter table lb_report_types_id_seq owner to
^
ERROR: syntax error at end of input
LINE 1: alter table too_many_submission_summary_id_seq owner to
^
ERROR: syntax error at end of input
LINE 1: alter table web_campaigns_web_camp_id_seq owner to
请帮我。