× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



I think here is the answer of your question.
        
                                Additional Message Information

 

        Message ID . . . . . . :                SQL0090
Severity . . . . . . . :                30              
        Message type . . . . . :                Diagnostic

 

        Message . . . . :   Host variable not permitted here.

        Cause . . . . . :   Host variable VAR is not allowed as used in
this           
          statement. Host variables are not allowed:

            -- In a CREATE VIEW, CREATE TABLE, or ALTER TABLE statement.

            -- In any interactive SQL statement when the Statement
processing value is 
          *RUN or *VLD.

            -- In an SQL statement processed by the RUNSQLSTM command.

            -- In an INSERT, UPDATE, DELETE, or DECLARE CURSOR statement
in REXX.      
        Recovery  . . . :   Do one of the following and try the request
again.         
            -- Specify either a constant or a column name to replace the
host          
          variable.  The colon indicates that the name that follows is a
host          
          variable.  Remove the colon to specify a column name.

            -- If in interactive SQL, set the statement processing value
to *SYN to    
 
More... 
        Press Enter to continue.

 

        F3=Exit                 F6=Print                F9=Display
message details                                        
        F10=Display messages in job log                 F12=Cancel
F21=Select assistance level         
 


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Carel Teijgeler
Sent: Tuesday, September 20, 2005 9:06 AM
To: midrange-l@xxxxxxxxxxxx
Subject: Re: SQL Create Table and Host Variables

Dave,

Why not have a template file created once and when used make a DUPOBJ in
the required library (QTEMP in your example); similar to the *OUTFILE
technique used with IBM supplied commands.

And if you want to create a CSV file, why not run embedded SQL and write
to the IFS directly, putting the field seperators in the proces?

Regards,
Carel Teijgeler

*********** REPLY SEPARATOR  ***********

On 20-9-05 at 11:36 Smith, Dave wrote:

>When I do a:
>
>CREATE TABLE  QTEMP.TableName AS
>(
>SELECT            Fields
>FROM               File
>WHERE            Fielda = :Variable
>) with Data
>
>I get an error message that I can not use a host variable in this
>statement.    I tried it in both embedded RPG and in a SQL procedure.
>
>So instead I've been doing  
>
>CREATE TABLE  QTEMP.TableName AS
>(
>SELECT            Fields
>FROM               File
>) with No Data;
>
>INSERT INTO QTEMP.TABLENAME
>SELECT            Fields
>FROM               File
>WHERE            Fielda = :Variable

>
>Now I get my table with the data I need but I need to maintain my
select
>statement in two spots...On the CREATE TABLE and on the INSERT.
>Anybody have a better method of using SQL to create a temporary file.
>In this case I'm using an email package to email the file off in a CSV
>file and then deleting the file. 




As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.