Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

Does anyone know where can I find list of syntax changes between DB2 for i v5r4 and v6r1?

We are currently migrating a backing database for an application from DB2 for i v5r4 to v6r1 and found out that some queries no longer work on the new version. However we cannot seem to find any official reference regarding this in ibm sites (or anywhere else for that matter).

share|improve this question
    
Do you have an example of your queries? And are you concerned about RPG-i5/OS functionality or is this actual DB2 functionality. –  Chris Aldrich May 14 '12 at 12:56
    
Can we add the [ibm-midrange] tag to this? Or replace [iseries] with [ibm-midrange] That is the same tag that is used on StackOverflow. –  Mike Wills May 14 '12 at 13:26
    
@MikeWills - if anything we should make them synonyms. I think it is good to keep db2 and iseries as tags as that really is a version of DB2. Just like there is DB2 for z/OS and DB2 LUW. –  Chris Aldrich May 14 '12 at 14:32
    
That is what Stackoverflow did. [iseries], [ibm-i] and [as400] were all synonyms of [ibm-midrange]. Copy what SO did and I'll be happy. I agree that DB2 can't be added as there is other versions. –  Mike Wills May 14 '12 at 14:38
    
@MikeWills - since I don't have enough reputation to do it yet, I submitted the request to Database Administrators Meta –  Chris Aldrich May 15 '12 at 11:14

2 Answers 2

Here is documentation for DB2 for i on i5/OS V6 R1.

Here is specific to DB2 itself.

Here is specific to DB2 SQL.

share|improve this answer

The Memo to Users for the upgrade (aka the upgrade documentation) should cover all of the changes made.

What I find strange though is that IBM does't usually break anything during upgrades (at least without covering it in the memo to users).

What problems are you having. Can you provide a sample?

Based on the sample, couldn't you do:

   FROM "JFPMTPRDD".T1HEAD2L head 
        INNER JOIN "JFPMTPRDD".PROD1P prod ON trim(fas.IDPROD)=trim(prod.IDPROD) 
        INNER JOIN "JFPMTPRDD".MSTRFA1P fas ON trim(head.FASID)=trim(fas.FASID)
            AND  trim(head.MFCODE)=trim(fas.MFCODE)
        INNER JOIN "JHFINLI31A"."CFMAST" cfiloan ON trim(head.MFCODE) = cfiloan.CFCIF#
        LEFT JOIN "JFPMTPRDD".TMSG01P errMsg ON (head.MSGCOD = errMsg.MSGCOD)

It might be that the query is looking for all of the joins defined.

share|improve this answer
    
This query pastebin.com/yq93Kr1k used to work in v5r4, but error in v6r1 with this message pastebin.com/gv68nVyQ . We manage to resolve this one by moving the left join as the first join clause before the other. I wonder what other undocumented changes are there.. –  bungrudi May 15 '12 at 11:25
    
Updated my post with thoughts. –  Mike Wills May 15 '12 at 13:47

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.