Vous connaissez déjà les principes de base des tables et sql d'ORACLE.
Il existe de nombreuses différences gênantes dans les noms de fonctions SQL et certains mots clés, mais cela ne devrait pas trop vous ralentir.
En interne DB2 est très différent de ORACLE, en particulier dans la façon dont le stockage est alloué et la façon dont le verrouillage et les transactions sont implémentées. Cela ne devrait pas trop vous déranger à moins qu'ils ne s'attendent à ce que vous fassiez de l'intense performance et du travail de réglage.
Les zones principales de différence sont spécifiques à z/OS plutôt qu'à DB2. Tout d'abord, la plupart des programmes mainframe sont écrits en COBOL ou DB2 pour s'exécuter dans des moniteurs de transaction CICS ou IMS (pensez aux conteneurs J2EE mais pour COBOL) et généralement ces programmes utilisent sql "STATIC". Donc, il vaut vraiment la peine de lire le manuel sur la façon dont les programmes staic sql sont écrits et mis en œuvre. La programmation est en fait plus facile car le précompilateur effectue la plus grande partie du travail et délivre les données aux champs réels de votre programme, mais il y a plus de confusion autour des DBRMs, mais le SQL est dépouillé du code source et stocké dans un fichier, Avant d'exécuter un programme, le fichier doit être chargé dans la base de données cible (à l'aide de BIND PLAN). À ce stade, le plan d'optimisation et d'accès est exécuté. Lorsque vous exécutez votre programme, un plan d'accès est prêt.
La deuxième douleur majeure est que vous aurez besoin d'apprendre JCL. Ce qui est une gueule de bois assez unique de la toute première série 360 vers 1968. Pensez-y comme un script de fourmi très primitif!