Une table à regroupement de colonnes ne peut pas être créée dans une base de données possédant plus d'une partition.
Lors de la création d'une base de données, trois espaces table sont définis, y compris l'espace table SYSCATSPACE pour les tables catalogue système. La taille de page qui devient la taille de page par défaut pour tous les espaces table est définie lorsque la base de données est créée. Si une taille de page supérieure à 4 096 octets (ou 4 ko) est choisie, la taille de page pour les tables catalogue est limitée à la taille des lignes que celles-ci auraient si l'espace table catalogue avait une taille de page égale à 4 ko. La taille de page de base de données par défaut est stockée en tant que paramètre de configuration de base de données informatif appelé pagesize.
Dans l'annexe B, «National language support (NLS)» du manuel Administration Guide: Planning, la rubrique intitulée «Supported territory codes and code pages» comporte les tableaux de chaque territoire. Deux tableaux doivent être mis à jour :
La page de codes de la ligne Linux GBK, dans le tableau «Chine (PRC), identificateur de territoire : CN (China (PRC), territory identifier: CN)» comporte la valeur 1383, qui doit être remplacée par 1386.
La ligne doit donc se présenter ainsi :
1386 D-4 GBK 86 zh_CN.GBK Linux
Le tableau «Japon, identificateur de territoire : JP (Japan, territory identifier: JP)» a été modifié.
Le nom de l'environnement local suivant doit être supprimé :
954 D-1 eucJP 81 japanese Solaris
Tableau corrigé :
Page de codes | Groupe | Jeu de codes | Code territoire | Environnement local | Système d'exploitation |
---|---|---|---|---|---|
932 | D-1 | IBM-932 | 81 | Ja_JP | AIX |
943 | D-1 | IBM-943 | 81 | Ja_JP | AIX |
954 | D-1 | IBM-eucJP | 81 | ja_JP | AIX |
1208 | N-1 | UTF-8 | 81 | JA_JP | AIX |
930 | D-1 | IBM-930 | 81 | - | Host |
939 | D-1 | IBM-939 | 81 | - | Host |
5026 | D-1 | IBM-5026 | 81 | - | Host |
5035 | D-1 | IBM-5035 | 81 | - | Host |
1390 | D-1 | 81 | - | Host | |
1399 | D-1 | 81 | - | Host | |
954 | D-1 | eucJP | 81 | ja_JP.eucJP | HP-UX |
5039 | D-1 | SJIS | 81 | ja_JP.SJIS | HP-UX |
954 | D-1 | EUC-JP | 81 | ja_JP | Linux |
932 | D-1 | IBM-932 | 81 | - | OS/2 |
942 | D-1 | IBM-942 | 81 | - | OS/2 |
943 | D-1 | IBM-943 | 81 | - | OS/2 |
954 | D-1 | eucJP | 81 | ja | SCO |
954 | D-1 | eucJP | 81 | ja_JP | SCO |
954 | D-1 | eucJP | 81 | ja_JP.EUC | SCO |
954 | D-1 | eucJP | 81 | ja_JP.eucJP | SCO |
943 | D-1 | IBM-943 | 81 | ja_JP.PCK | Solaris |
954 | D-1 | eucJP | 81 | ja | Solaris |
1208 | N-1 | UTF-8 | 81 | ja_JP.UTF-8 | Solaris |
943 | D-1 | IBM-943 | 81 | - | Windows |
1394 | D-1 | 81 | - |
DB2 Universal Database (UDB) prend en charge la spécification XA91 définie dans X/Open CAE Specification Distributed Transaction Processing: The XA Specification, avec les exceptions suivantes :
La spécification XA permet à l'interface d'utiliser des services asynchrones, de sorte que le résultat d'une requête puisse être vérifié ultérieurement. Le gestionnaire de base de données nécessite que les requêtes soient appelées en mode synchrone.
L'interface XA offre deux manières d'enregistrer un RM : enregistrement statique et enregistrement dynamique. DB2 UDB prend en charge les enregistrements dynamiques et statiques. DB2 UDB fournit deux commutateurs :
DB2 UDB ne prend pas en charge la migration des transactions entre les unités d'exécution du contrôle.
Comme l'exige l'interface XA, le gestionnaire de base de données offre une variable C externe db2xa_switch et db2xa_switch_static de type xa_switch_t pour renvoyer la structure de commutateur XA au TM. Au contraire des adresses des différentes fonctions XA, les zones suivantes sont renvoyées :
Permet d'établir de manière explicite que DB2 UDB utilise un enregistrement dynamique et que TM ne doit pas utiliser la migration des associations. Permet d'établir de manière implicite que l'opération asynchrone n'est pas prise en charge.
Pour db2xa_switch_static TMNOMIGRATE est défini
Permet d'établir de manière explicite que DB2 UDB utilise un enregistrement dynamique et que TM ne doit pas utiliser la migration des associations. Permet d'établir de manière implicite que l'opération asynchrone n'est pas prise en charge.
L'architecture XA nécessite qu'un Gestionnaire de ressources offre un commutateur permettant au Gestionnaire de transactions XA d'accéder à ses routines xa_. Le commutateur d'un Gestionnaire de ressources utilise une structure appelée xa_switch_t. Le commutateur contient le nom du Gestionnaire de ressources, des pointeurs non NULL vers les points d'entrée XA du Gestionnaire de ressources, un repère et un numéro de version.
Il est possible d'obtenir le commutateur de DB2 Universal Database (UDB) de l'une des deux façons suivantes :
#define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch)avant d'utiliser db2xa_switch ou db2xa_switch_static.
DB2 UDB fournit ces API, qui renvoient l'adresse de la structure db2xa_switch ou db2xa_switch_static. Le prototype de cette fonction est établi de la manière suivante :
struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( )
Quelle que soit la méthode, vous devez lier votre application à libdb2.
Le pointeur vers la structure xa_switch, db2xa_switch ou db2xa_switch_static est exporté en tant que données DLL. Cela implique qu'une application Windows NT utilisant cette structure doit lui faire référence de l'une des trois manières suivantes :
#define db2xa_switch (*db2xa_switch) #define db2xa_switch_static (*db2xa_switch)avant d'utiliser db2xa_switch ou db2xa_switch_static.
extern __declspec(dllimport) struct xa_switch_t db2xa_switch extern __declspec(dllimport) struct xa_switch_t db2xa_switch_static
DB2 UDB fournit cette API, qui renvoie l'adresse de la structure db2xa_switch ou db2xa_switch_static. Le prototype de cette fonction est établi de la manière suivante :
struct xa_switch_t * SQL_API_FN db2xacic( ) struct xa_switch_t * SQL_API_FN db2xacicst( )
Avec l'une de ces méthodes, vous devez lier votre application à db2api.lib.
Le code suivant illustre les différentes manières d'accéder à db2xa_switch ou à db2xa_switch_static via un programme C sur une plateforme DB2 UDB. Assurez-vous d'avoir lié votre application à la bibliothèque appropriée.
#include <stdio.h> #include <xa.h> struct xa_switch_t * SQL_API_FN db2xacic( ); #ifdef DECLSPEC_DEFN extern __declspec(dllimport) struct xa_switch_t db2xa_switch; #else #define db2xa_switch (*db2xa_switch) extern struct xa_switch_t db2xa_switch; #endif
main( ) { struct xa_switch_t *foo; printf ( "%s \n", db2xa_switch.name ); foo = db2xacic(); printf ( "%s \n", foo->name ); return ; }
La colonne Paramètres internes du tableau suivant a été modifiée de façon à indiquer les paramètres de l'unité d'exécution du contrôle (TOC).
L'unité d'exécution du contrôle est l'entité à laquelle toutes les connexions DB2 UDB XA sont liées :
Valeur de TPM | Moniteur du programme transactionnel (TP) | Paramètres internes |
---|---|---|
CICS | IBM TxSeries CICS |
AXLIB=libEncServer (pour Windows)
=/usr/lpp/encina/lib/libEncServer
(pour systèmes Linux et UNIX)
HOLD_CURSOR=T
CHAIN_END=T
SUSPEND_CURSOR=F
TOC=T |
ENCINA | Moniteur IBM TxSeries Encina |
AXLIB=libEncServer (pour Windows)
=/usr/lpp/encina/lib/libEncServer
(pour systèmes Linux et UNIX)
HOLD_CURSOR=F
CHAIN_END=T
SUSPEND_CURSOR=F
TOC=T |
MQ | IBM MQSeries |
AXLIB=mqmax
(pour Windows)
=/usr/mqm/lib/libmqmax_r.a
(pour applications AIX conçues avec des unités d'exécution)
=/usr/mqm/lib/libmqmax.a
(pour applications AIX non conçues avec des unités d'exécution)
=/opt/mqm/lib/libmqmax.so
(pour Solaris)
=/opt/mqm/lib/libmqmax_r.sl
(pour applications HP conçues avec des unités d'exécution)
=/opt/mqm/lib/libmqmax.sl
(pour applications HP non conçues avec des unités d'exécution)
=/opt/mqm/lib/libmqmax_r.so
(pour applications Linux conçues avec des unités d'exécution)
=/opt/mqm/lib/libmqmax.so
(pour applications Linux non conçues avec des unités d'exécution)
HOLD_CURSOR=F
CHAIN_END=F
SUSPEND_CURSOR=F
TOC=P |
CB | IBM Component Broker |
AXLIB=somtrx1i (pour Windows)
=libsomtrx1
(pour systèmes Linux et UNIX)
HOLD_CURSOR=F
CHAIN_END=T
SUSPEND_CURSOR=F
TOC=T |
SF | IBM San Francisco |
AXLIB=ibmsfDB2 HOLD_CURSOR=F CHAIN_END=T SUSPEND_CURSOR=F TOC=T |
TUXEDO | BEA Tuxedo |
AXLIB=libtux HOLD_CURSOR=F CHAIN_END=F SUSPEND_CURSOR=F TOC=T |
MTS | Microsoft Transaction Server | Il n'est pas nécessaire de configurer DB2 UDB pour MTS. MTS est détecté automatiquement par le pilote ODBC de DB2 UDB. |
JTA | Java Transaction API | Il n'est pas nécessaire de configurer DB2 UDB pour des serveurs EJS (Enterprise Java Servers) comme IBM WebSphere. Le pilote JDBC de DB2 UDB détecte automatiquement cet environnement. Par conséquent, cette valeur TPM est ignorée. |
Le tableau suivant contient une liste de tous les fichiers de table de conversion de pages de codes associés aux pages de codes 923 et 924. Chaque fichier se présente sous la forme XXXXYYYY.cnv ou ibmZZZZZ.ucs, où XXXXX est le numéro de la page de codes source et YYYY est le numéro de la page de codes cible. Le fichier ibmZZZZZ.ucs prend en charge la conversion entre la page de codes ZZZZZ et Unicode.
Pour activer une table de conversion de page de codes particulière, renommer ou copier ce fichier de table de conversion à son nouveau nom comme l'illustre la seconde colonne.
Par exemple, pour prendre en charge le symbole euro lors de la connexion d'un client 8859-1/15 (Latin 1/9) à une base de données Windows 1252, vous devez renommer ou copier les fichiers suivants de table de conversion de page de codes dans le répertoire sqllib/conv/ :
Fichiers de table de conversion 923 et 924 dans le répertoire sqllib/conv/ | Nouveau nom |
---|---|
04370923.cnv | 04370819.cnv |
08500923.cnv | 08500819.cnv |
08600923.cnv | 08600819.cnv |
08630923.cnv | 08630819.cnv |
09230437.cnv | 08190437.cnv |
09230850.cnv | 08190850.cnv |
09230860.cnv | 08190860.cnv |
09231043.cnv | 08191043.cnv |
09231051.cnv | 08191051.cnv |
09231114.cnv | 08191114.cnv |
09231252.cnv | 08191252.cnv |
09231275.cnv | 08191275.cnv |
09241252.cnv | 10471252.cnv |
10430923.cnv | 10430819.cnv |
10510923.cnv | 10510819.cnv |
11140923.cnv | 11140819.cnv |
12520923.cnv | 12520819.cnv |
12750923.cnv | 12750819.cnv |
ibm00923.ucs | ibm00819.ucs |
Les tableaux ci-dessous répertorient les tables de conversion qui ont été améliorées de façon à prendre en charge le symbole monétaire de l'euro (?) Si vous souhaitez désactiver la prise en charge du symbole de l'euro, téléchargez le fichier de table de conversion indiqué dans la colonne intitulée "Fichiers de table de conversion".
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
864, 17248 | 1046, 9238 | 08641046.cnv, 10460864.cnv, IBM00864.ucs |
864, 17248 | 1256, 5352 | 08641256.cnv, 12560864.cnv, IBM00864.ucs |
864, 17248 | 1200, 1208, 13488, 17584 | IBM00864.ucs |
1046, 9238 | 864, 17248 | 10460864.cnv, 08641046.cnv, IBM01046.ucs |
1046, 9238 | 1089 | 10461089.cnv, 10891046.cnv, IBM01046.ucs |
1046, 9238 | 1256, 5352 | 10461256.cnv, 12561046.cnv, IBM01046.ucs |
1046, 9238 | 1200, 1208, 13488, 17584 | IBM01046.ucs |
1089 | 1046, 9238 | 10891046.cnv, 10461089.cnv |
1256, 5352 | 864, 17248 | 12560864.cnv, 08641256.cnv, IBM01256.ucs |
1256, 5352 | 1046, 9238 | 12561046.cnv, 10461256.cnv, IBM01256.ucs |
1256, 5352 | 1200, 1208, 13488, 17584 | IBM01256.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
921, 901 | 1257 | 09211257.cnv, 12570921.cnv, IBM00921.ucs |
921, 901 | 1200, 1208, 13488, 17584 | IBM00921.ucs |
1257, 5353 | 921, 901 | 12570921.cnv, 09211257.cnv, IBM01257.ucs |
1257, 5353 | 922, 902 | 12570922.cnv, 09221257.cnv, IBM01257.ucs |
1257, 5353 | 1200, 1208, 13488, 17584 | IBM01257.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
1131, 849 | 1251, 5347 | 11311251.cnv, 12511131.cnv |
1131, 849 | 1283 | 11311283.cnv |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
855, 872 | 866, 808 | 08550866.cnv, 08660855.cnv |
855, 872 | 1251, 5347 | 08551251.cnv, 12510855.cnv |
866, 808 | 855, 872 | 08660855.cnv, 08550866.cnv |
866, 808 | 1251, 5347 | 08661251.cnv, 12510866.cnv |
1251, 5347 | 855, 872 | 12510855.cnv, 08551251.cnv, IBM01251.ucs |
1251, 5347 | 866, 808 | 12510866.cnv, 08661251.cnv, IBM01251.ucs |
1251, 5347 | 1124 | 12511124.cnv, 11241251.cnv, IBM01251.ucs |
1251, 5347 | 1125, 848 | 12511125.cnv, 11251251.cnv, IBM01251.ucs |
1251, 5347 | 1131, 849 | 12511131.cnv, 11311251.cnv, IBM01251.ucs |
1251, 5347 | 1200, 1208, 13488, 17584 | IBM01251.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
922, 902 | 1257 | 09221257.cnv, 12570922.cnv, IBM00922.ucs |
922, 902 | 1200, 1208, 13488, 17584 | IBM00922.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
813, 4909 | 869, 9061 | 08130869.cnv, 08690813.cnv, IBM00813.ucs |
813, 4909 | 1253, 5349 | 08131253.cnv, 12530813.cnv, IBM00813.ucs |
813, 4909 | 1200, 1208, 13488, 17584 | IBM00813.ucs |
869, 9061 | 813, 4909 | 08690813.cnv, 08130869.cnv |
869, 9061 | 1253, 5349 | 08691253.cnv, 12530869.cnv |
1253, 5349 | 813, 4909 | 12530813.cnv, 08131253.cnv, IBM01253.ucs |
1253, 5349 | 869, 9061 | 12530869.cnv, 08691253.cnv, IBM01253.ucs |
1253, 5349 | 1200, 1208, 13488, 17584 | IBM01253.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
856, 9048 | 862, 867 | 08560862.cnv, 08620856.cnv, IBM0856.ucs |
856, 9048 | 916 | 08560916.cnv, 09160856.cnv, IBM0856.ucs |
856, 9048 | 1255, 5351 | 08561255.cnv, 12550856.cnv, IBM0856.ucs |
856, 9048 | 1200, 1208, 13488, 17584 | IBM0856.ucs |
862, 867 | 856, 9048 | 08620856.cnv, 08560862.cnv, IBM00862.ucs |
862, 867 | 916 | 08620916.cnv, 09160862.cnv, IBM00862.ucs |
862, 867 | 1255, 5351 | 08621255.cnv, 12550862.cnv, IBM00862.ucs |
862, 867 | 1200, 1208, 13488, 17584 | IBM00862.ucs |
916 | 856, 9048 | 09160856.cnv, 08560916.cnv |
916 | 862, 867 | 09160862.cnv, 08620916.cnv |
1255, 5351 | 856, 9048 | 12550856.cnv, 08561255.cnv, IBM01255.ucs |
1255, 5351 | 862, 867 | 12550862.cnv, 08621255.cnv, IBM01255.ucs |
1255, 5351 | 1200, 1208, 13488, 17584 | IBM01255.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
437 | 850, 858 | 04370850.cnv, 08500437.cnv |
850, 858 | 437 | 08500437.cnv, 04370850.cnv |
850, 858 | 860 | 08500860.cnv, 08600850.cnv |
850, 858 | 1114, 5210 | 08501114.cnv, 11140850.cnv |
850, 858 | 1275 | 08501275.cnv, 12750850.cnv |
860 | 850, 858 | 08600850.cnv, 08500860.cnv |
1275 | 850, 858 | 12750850.cnv, 08501275.cnv |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
852, 9044 | 1250, 5346 | 08521250.cnv, 12500852.cnv |
1250, 5346 | 852, 9044 | 12500852.cnv, 08521250.cnv, IBM01250.ucs |
1250, 5346 | 1200, 1208, 13488, 17584 | IBM01250.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
837, 935, 1388 | 1200, 1208, 13488, 17584 | 1388ucs2.cnv |
1386 | 1200, 1208, 13488, 17584 | 1386ucs2.cnv, ucs21386.cnv |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
937, 835, 1371 | 950, 1370 | 09370950.cnv, 0937ucs2.cnv |
937, 835, 1371 | 1200, 1208, 13488, 17584 | 0937ucs2.cnv |
1114, 5210 | 850, 858 | 11140850.cnv, 08501114.cnv |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
874, 1161 | 1200, 1208, 13488, 17584 | IBM00874.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
857, 9049 | 1254, 5350 | 08571254.cnv, 12540857.cnv |
1254, 5350 | 857, 9049 | 12540857.cnv, 08571254.cnv, IBM01254.ucs |
1254, 5350 | 1200, 1208, 13488, 17584 | IBM01254.ucs |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
1124 | 1251, 5347 | 11241251.cnv, 12511124.cnv |
1125, 848 | 1251, 5347 | 11251251.cnv, 12511125.cnv |
CCSIDs/CPGIDs du serveur de base de données | CCSIDs/CPGIDs du client de base de données | Fichiers de table de conversion |
---|---|---|
1200, 1208, 13488, 17584 | 813, 4909 | IBM00813.ucs |
1200, 1208, 13488, 17584 | 862, 867 | IBM00862.ucs |
1200, 1208, 13488, 17584 | 864, 17248 | IBM00864.ucs |
1200, 1208, 13488, 17584 | 874, 1161 | IBM00874.ucs |
1200, 1208, 13488, 17584 | 921, 901 | IBM00921.ucs |
1200, 1208, 13488, 17584 | 922, 902 | IBM00922.ucs |
1200, 1208, 13488, 17584 | 1046, 9238 | IBM01046.ucs |
1200, 1208, 13488, 17584 | 1250, 5346 | IBM01250.ucs |
1200, 1208, 13488, 17584 | 1251, 5347 | IBM01251.ucs |
1200, 1208, 13488, 17584 | 1253, 5349 | IBM01253.ucs |
1200, 1208, 13488, 17584 | 1254, 5350 | IBM01254.ucs |
1200, 1208, 13488, 17584 | 1255, 5351 | IBM01255.ucs |
1200, 1208, 13488, 17584 | 1256, 5352 | IBM01256.ucs |
1200, 1208, 13488, 17584 | 1386 | ucs21386.cnv, 1386ucs2.cnv |