Types de données Oracle de base
Cette rubrique décrit comment l’adaptateur Microsoft BizTalk pour Oracle E-Business Suite présente les types de données Oracle de base.
Types de données Oracle pris en charge
L’adaptateur Oracle E-Business prend en charge la saisie sécurisée pour certains types de données Oracle. Lorsque la saisie sécurisée est activée, ces types de données sont représentés sous forme de chaînes. Vous configurez la saisie sécurisée en activant la propriété de liaison EnableSafeTyping (désactivée par défaut). Pour plus d’informations sur les propriétés de liaison de l’adaptateur Oracle E-Business, consultez En savoir plus sur les propriétés de liaison de l’adaptateur BizTalk pour Oracle E-Business Suite.
Notes
La saisie sécurisée n’est pas prise en charge si les types de données se trouvent dans des types définis par l’utilisateur (UDR).
Le tableau suivant montre comment les types de données Oracle sont exposés avec la saisie sécurisée désactivée (EnableSafeTyping a la valeur false). Les types de données Oracle affectés par la propriété de liaison EnableSafeTyping sont marqués d’un astérisque (*).
Type de données Oracle | Type XSD | Type .NET | Commentaires |
---|---|---|---|
BFile | input : xsd :string sortie : xsd :base64Binary |
String Byte[] |
Le type de données BFile n’est pas pris en charge dans les types complexes (par exemple, RecordType, TableType, UDT et VArray). |
Blob | xsd:base64Binary | Byte[] | - |
Char | xsd:string | String | - |
Clob | xsd:string | String | - |
Date* (Aucun typage sécurisé à l’intérieur d’un type défini par l’utilisateur) |
xsd:dateTime | DateTime | Les valeurs de date ne peuvent pas contenir d’informations de fuseau horaire (décalages UTC ou UTC) : - Les valeurs xsd :dateTime ne doivent pas contenir de décalages UTC ou UTC - DateTime.Kind doit être DateTimeKind.Unspecified Si des informations de fuseau horaire sont spécifiées, l’adaptateur lève une exception XmlReaderParsingException avec un message qui indique le champ. Note: L’adaptateur Oracle E-Business expose le type de données Date Oracle sous la forme xsd :dateTime au lieu de xsd :date, car :
|
Flotteur** | xsd :float if prec <=7 xsd :double si prec > 7 et <=15 xsd :string si préc > 15 |
Float Double String |
Vous devez spécifier la valeur cohérente avec le format spécifié pour le séparateur de groupe et le caractère décimal dans la propriété de liaison NumericCharacters sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison NumericCharacters , l’adaptateur utilise les paramètres MLS pour le client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
IntervalDS | xsd:string xsd :duration si à l’intérieur d’un UDT |
String Intervalle de temps si à l’intérieur d’un type défini par l’utilisateur |
L’adaptateur retourne les données IntervalDS sous forme de chaîne à l’aide de la méthode OracleIntervalDS.ToString. La valeur doit être exprimée au format natif Oracle : Day HH :MI :SSxFF (par exemple, « 5 15 :30 :12.99 »). |
IntervalYM | xsd:string xsd :long si à l’intérieur d’un UDT |
String Long si à l’intérieur d’un UDT |
L’adaptateur retourne les données IntervalYM sous forme de chaîne à l’aide de la méthode OracleIntervalYM.ToString. La valeur doit être exprimée au format natif Oracle : Année-Mois ; par exemple, « 1-2 » (1 an et 2 mois). |
Long | xsd:string | String | À compter de la version oracle database 9i, le type de données LONG est déconseillé. Oracle recommande d’utiliser les types de données LOB (Large Object) à la place. Par conséquent, lors de l’exécution d’opérations sur la base de données Oracle à l’aide de l’adaptateur Oracle Database, nous vous recommandons d’utiliser des artefacts de base de données Oracle qui fonctionnent sur les types de données métier et non sur le type de données LONG. |
LongRaw | xsd:base64Binary | Byte[] | - |
NChar | xsd:string | String | - |
NClob | xsd:string | String | |
Nombre** | xsd :decimal si prec <=28 xsd :string si préc > 28 |
Decimal String |
- |
NVarchar2 | xsd:string | String | - |
Brut | xsd:base64Binary | Byte[] | |
Rowid | xsd:string | String | - |
Timestamp* (Aucun typage sécurisé à l’intérieur d’un type défini par l’utilisateur) |
xsd :dateTime si prec <= 7 xsd :string si préc > 7 |
DateTime String |
Lorsqu’elle est exposée sous forme de chaîne (antérieure à > 7), la valeur doit être exprimée dans Oracle NLS_TIMESTAMP_FORMAT. Vous pouvez spécifier le format de chaîne pour les types de données TimeStamp dans la propriété de liaison TimeStampFormat sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison TimeStampFormat , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. Les valeurs TimeStamp ne peuvent pas contenir d’informations de fuseau horaire (décalages UTC ou UTC) : - les valeurs xsd :dateTime ne doivent pas contenir de décalages UTC ou UTC - DateTime.Kind doit être DateTimeKind.Unspecified Si des informations de fuseau horaire sont spécifiées, l’adaptateur lève une exception XmlReaderParsingException avec un message indiquant le champ. |
TimeStampLTZ | xsd:string | String | TimeStampLTZ n’est pas pris en charge dans les UDT. En dehors d’un UDT : la valeur doit être exprimée dans oracle NLS_TIMESTAMP_TZ_FORMAT. Vous pouvez spécifier le format de chaîne pour les types de données TimeStampLTZ dans la propriété de liaison TimeStampTZFormat sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison TimeStampTZFormat , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
TimeStampTZ | xsd:string xsd :dateTime si à l’intérieur d’un UDT |
String DateTime si à l’intérieur d’un UDT |
En dehors d’un UDT : la valeur doit être exprimée dans oracle NLS_TIMESTAMP_TZ_FORMAT. Vous pouvez spécifier le format de chaîne pour les types de données TimeStampTZ dans la propriété de liaison TimeStampTZFormat sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison TimeStampTZFormat , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
Decimales** | xsd :decimal if prec <=28 xsd :string si préc > 28 |
Decimal String |
- |
Varchar2 | xsd:string | String | - |
Float binaire** | xsd :float if prec <=7 xsd :string si préc > 7 |
Float Chaîne |
Vous devez spécifier la valeur cohérente avec le format spécifié pour le caractère décimal et le séparateur de groupe dans la propriété de liaison NumericCharacters sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison NumericCharacters , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
Double binaire** | xsd :double if prec <=15 xsd :string si préc > 15 |
Double String |
- |
Entier binaire** | xsd:integer | Int32 | |
Boolean | xsd:boolean | Valeur booléenne nullable | |
XMLTYPE | xsd:string | String | Pris en charge pour les paramètres de procédure de niveau supérieur. Les caractères XML réservés tels que «< », « »> doivent être remplacés par leur représentation d’entité (<, >) lors du développement d’applications dans BizTalk et lors de l’utilisation du modèle de canal WCF. Cela n’est pas obligatoire dans le cas du modèle de service WCF. |
*La façon dont ces types de données Oracle sont exposés est affectée par la propriété de liaison EnableSafeTyping .
**La façon dont ces types de données numériques Oracle à l’intérieur des DataSets et des CURSEURS REF faiblement typés est affectée par la propriété de liaison EnableSafeTyping .
Important
- La longueur maximale de la valeur dans un type de données Oracle dans l’adaptateur Oracle E-Business est limitée par la longueur maximale de la valeur prise en charge par ODP.NET pour le type de données Oracle.
- L’adaptateur Oracle E-Business traite en interne les types de données numériques Oracle à l’intérieur des UDT comme décimaux .NET. Toutefois, en général (c’est-à-dire en dehors des UUDT), l’adaptateur Oracle E-Business traite en interne les types de données numériques Oracle comme OracleDecimal.
Saisie sécurisée activée
Le tableau suivant montre comment les types de données Oracle affectés par la saisie sécurisée sont modifiés lorsque la propriété de liaison EnableSafeTyping est true.
Notes
Les types de données Oracle qui ne figurent pas dans cette table sont exposés de la même manière, que la saisie sécurisée soit activée ou désactivée.
Type de données Oracle | Type XSD | Type .NET | Commentaire |
---|---|---|---|
Date | xsd:string | String | La valeur doit être exprimée dans Oracle NLS_DATE_FORMAT. Vous pouvez spécifier le format des types de données Date dans la propriété de liaison DateFormat sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison DateFormat , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
TimeStamp | xsd:string | String | La valeur doit être exprimée dans Oracle NLS_TIMESTAMP_FORMAT. Vous pouvez spécifier le format de chaîne pour les types de données TimeStamp dans la propriété de liaison TimeStampFormat sous la propriété de liaison MlsSettings . Si aucune valeur n’est spécifiée pour la propriété de liaison TimeStampFormat , l’adaptateur utilise les paramètres MLS du client ODP.NET sur l’ordinateur sur lequel l’adaptateur est installé. |
Important
Si la saisie sécurisée est activée, les types de données numériques Oracle à l’intérieur des DataSets et les CURSEURS REF faiblement typés sont toujours exposés sous forme de chaînes.
Validation
L’adaptateur Oracle E-Business n’effectue aucune validation explicite sur les valeurs que vous spécifiez pour les types de données Oracle. Toutefois, selon le type de données Oracle et si la saisie sécurisée est activée ou désactivée, la validation implicite peut être effectuée :
Lors de la désérialisation entre le code XML transmis dans un message et les types .NET utilisés en interne par l’adaptateur.
Par ODP.NET pour certains types de données.
Voir aussi
Messages et schémas de message pour l’adaptateur BizTalk pour Oracle E-Business Suite