Try (to solve string terminating error ):
sql_string := ''INSERT INTO temp_table ( view_name, row_count ) SELECT
'' || r_rec.viewname || '', count(*) FROM '' || r_rec.viewname || '' ; '' ;
BUT, you will be needing to put view_name in Quote too... try it yourself...
HTH
Denis
----- Original Message -----
From: David B <postgresql@thegatelys.com>
To: <pgsql-sql@postgresql.org>
Sent: Wednesday, April 21, 2004 4:54 AM
Subject: [SQL] Syntax for cmd to EXEC...how many quotes?
> Folks,
>
> This is driving me crazy...I'm sure it's possible but that I am getting
the
> #quotes wrong in some way...
> I keep getting unterminated string errors...now matter how many quotes I
> use.
>
> I have a FN that I want to loop through all views and populate a table
with
> a count(*) from each views.
>
> To do it I'm doing a LOOP around all views...something like:
>
> FOR r_rec IN SELECT viewname from pg_views
> LOOP
>
> sql_string := 'INSERT INTO temp_table ( view_name, row_count ) SELECT
> ''' || r_rec.viewname || ''', count(*) FROM ' || r_rec.viewname || ' ; '
;
>
> EXEC sql_string ;
>
> END LOOP ;
>
> END ;
>
>
> Building that sql_string is the problem.
> Any thoughts folks?
>
> -D
> ---
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.648 / Virus Database: 415 - Release Date: 3/31/2004
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 6: Have you searched our list archives?
>
> http://archives.postgresql.org