X-Original-To: pgsql-sql-postgresql.org@localhost.postgresql.org Received: from localhost (unknown [200.46.204.2]) by svr1.postgresql.org (Postfix) with ESMTP id DFE24D1D26C for ; Wed, 21 Apr 2004 09:24:40 -0300 (ADT) Received: from svr1.postgresql.org ([200.46.204.71]) by localhost (neptune.hub.org [200.46.204.2]) (amavisd-new, port 10024) with ESMTP id 38029-02 for ; Wed, 21 Apr 2004 09:24:40 -0300 (ADT) Received: from pd8mo3no.prod.shaw.ca (idcmail-mo2no.cg.shawcable.net [64.59.134.9]) by svr1.postgresql.org (Postfix) with ESMTP id 149A2D1D163 for ; Wed, 21 Apr 2004 09:24:37 -0300 (ADT) Received: from pd8mr1no.prod.shaw.ca (pd8mr1no-qfe2.prod.shaw.ca [10.0.144.158]) by l-daemon (iPlanet Messaging Server 5.2 HotFix 1.18 (built Jul 28 2003)) with ESMTP id <0HWI004XFSXW47@l-daemon> for pgsql-sql@postgresql.org; Wed, 21 Apr 2004 06:20:20 -0600 (MDT) Received: from pn7ml2no.prod.shaw.ca ([10.0.149.111]) by pd8mr1no.prod.shaw.ca (Sun ONE Messaging Server 6.0 HotFix 1.01 (built Mar 15 2004)) with ESMTP id <0HWI00MKASY48MC0@pd8mr1no.prod.shaw.ca> for pgsql-sql@postgresql.org; Wed, 21 Apr 2004 06:20:28 -0600 (MDT) Received: from Dell4500 (h24-77-13-13.wp.shawcable.net [24.77.13.13]) by l-daemon (iPlanet Messaging Server 5.2 HotFix 1.18 (built Jul 28 2003)) with SMTP id <0HWI00BHBSXT33@l-daemon> for pgsql-sql@postgresql.org; Wed, 21 Apr 2004 06:20:20 -0600 (MDT) Date: Wed, 21 Apr 2004 07:20:20 -0500 From: George Weaver Subject: Re: Syntax for cmd to EXEC...how many quotes? To: David B , pgsql-sql@postgresql.org Message-id: <000601c4279b$04c12f00$6400a8c0@Dell4500> MIME-version: 1.0 X-MIMEOLE: Produced By Microsoft MimeOLE V6.00.2800.1409 X-Mailer: Microsoft Outlook Express 6.00.2800.1409 Content-type: text/plain; charset=iso-8859-1 Content-transfer-encoding: 7bit X-Priority: 3 X-MSMail-priority: Normal References: X-Virus-Scanned: by amavisd-new at postgresql.org X-Spam-Status: No, hits=1.0 tagged_above=0.0 required=5.0 tests=FAKE_HELO_SHAW_CA, RCVD_IN_SORBS X-Spam-Level: * X-Archive-Number: 200404/204 X-Sequence-Number: 17579 David, I tend to use \ to escape things like ' - I find it makes it somewhat easier to debug. What about: sql_string :=\' INSERT INTO temp_table ( view_name, row_count ) SELECT \' || r_rec.viewname || \', count(*) FROM \' || r_rec.viewname || \' ; \' ; HTH George ----- Original Message ----- From: "David B" To: Sent: Tuesday, April 20, 2004 6:24 PM 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 >