×
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Contact US

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

SQLRPGLE and the PREPARE Keyword

SQLRPGLE and the PREPARE Keyword

SQLRPGLE and the PREPARE Keyword

(OP)
I am trying to use SQL to remotely change files on other machines. They exist on different libraries on different machines, so I HAVE to dynamically change the Library, and possibly file, so I need to PREPARE an SQL statement...but I am having some issues using fields in the PREPARE statement. Here is the code as it sits, not working:

SQLString = 'Select Count(*) Into ? From ' + %Trim(Library)+ '/' + %Trim(File)Where TRMNUM = :NewTrm';

          Exec SQL
            PREPARE CheckIfExists FROM :SQLString;

          Exec SQL
            Execute CheckIfExists USING :Count;

And it Says that "?" is invalid...but isn't that the SQL wildcard? I tried replacing the ? with :Count, but it doesn't like that, says the value is "unusable". I read that you can't use RPG variables in the PREPARE statement...so can anyone help me out with how to use this correctly?

RE: SQLRPGLE and the PREPARE Keyword

Try the following...

SQLString = 'SELECT COUNT(*) FROM ' +
                 %Trim(Library)+ '/' + %Trim(File) +
                ' WHERE TRMNUM = ''' + NewTrm + '''';
EXEC SQL PREPARE SQL_STMT FROM :SQLString;
EXEC SQL DECLARE C1 CURSOR FOR SQL_STMT;
EXEC SQL OPEN C1;
EXEC SQL FETCH C1 INTO :DS1;


Note: This example works if TRMNUM is a character field.  If TRMNUM
      is numeric, use the following line.
SQLString = 'SELECT COUNT(*) FROM ' +
                 %Trim(Library)+ '/' + %Trim(File) +
                ' WHERE TRMNUM = ' + NewTrm;

- vbMax

RE: SQLRPGLE and the PREPARE Keyword

(OP)
It worked! thanks.

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close