|
You could incorporate all into one sql. For example: C C/EXEC SQL C+ INSERT INTO EMAILFDST C+ VALUES(:EMAILFDST) C+ WHERE NOT EXISTS C+ (SELECT 1 FROM EMAILFDST C+ WHERE EMDFIL=:EMDFIL AND C+ EMDCMP=:EMDCMP AND C+ EMDFAC=:EMDFAC AND C+ EMDUSR=:EMDUSR) The insert will occur only if no row exists in file EMAILFDST for the criteria specified in the WHERE clause -----Original Message----- From: darren@dekko.com [ mailto:darren@dekko.com <mailto:darren@dekko.com> ] Sent: Wednesday, November 28, 2001 12:23 PM To: rpg400-l@midrange.com Subject: Embedded SQL exists? I am running a subfile maintenance program using RPGLE and embedded SQL. When the user specifies they want to insert a record I'm using a: (don't read the code too closely, basically its just a SELECT with a WHERE) C/EXEC SQL C+ SELECT DISTINCT EMDFIL INTO :EMDFIL C+ FROM EMAILFDST C+ WHERE EMDFIL=:EMDFIL AND C+ EMDCMP=:EMDCMP AND C+ EMDFAC=:EMDFAC AND C+ EMDUSR=:EMDUSR C/END-EXEC and then checking the SQL code: C If SQLCOD<>0 to make sure the part doesn't already exist before doing the insert: C C/EXEC SQL C+ INSERT INTO EMAILFDST C+ VALUES(:EMAILFDST) C/END-EXEC Is there a cleaner way of doing this? I don't really care what the value of EMDFIL is, its the "WHERE" that I'm really interested in verifying. I've read the reference and programming manual from IBM and it doesn't seem like you can incorporate this checking into the INSERT command, unless I misunderstood. _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@midrange.com To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/cgi-bin/listinfo/rpg400-l <http://lists.midrange.com/cgi-bin/listinfo/rpg400-l> or email: RPG400-L-request@midrange.com Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l <http://archive.midrange.com/rpg400-l> .
As an Amazon Associate we earn from qualifying purchases.
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.