Tipos de Dados de Valores de Origens Externas

O ESQL pode extrair os dados das duas fontes externas: campos de mensagens e colunas de banco de dados.

O tipo de dados ESQL de campos de mensagens depende do tipo da mensagem (por exemplo, XML) e do analisador utilizado para analisá-lo. O tipo de dados ESQL do valor retornado por uma referência de coluna do banco de dados depende do tipo de dados da coluna no banco de dados.

A tabela a seguir mostra em quais tipos de dados ESQL os diversos tipos de dados do banco de dados internos são convertidos, quando são acessados por fluxos de mensagens que estão em execução em um intermediário.

As versões suportadas para os produtos de banco de dados mostradas nesta tabela estão listadas em Bancos de Dados Suportados.

Tipo de D]ados DB2 SQL Server e Sybase Oracle Informix
BOOLEAN   BIT    
INTEGER SMALLINT, INTEGER, BIGINT INT, SMALLINT, TINYINT   INT, SMALLINT
FLOAT REAL, DOUBLE FLOAT, REAL NUMBER()1 FLOAT, SMALLFLOAT, DOUBLE
DECIMAL DECIMAL DECIMAL, NUMERIC, MONEY, SMALLMONEY NUMBER(P)1, NUMBER(P,S)1 DECIMAL, MONEY
CHARACTER CHAR, VARCHAR, CLOB CHAR, VARCHAR, TEXT CHAR, VARCHAR2, ROWID, UROWID, LONG, CLOB CHAR, VARCHAR, CHAR VARYING
HORA HORA      
GMTTIME        
DATE DATE     DATE
TIMESTAMP TIMESTAMP Início da mudançaDATETIME, SMALLDATETIME, TIMESTAMPFim da mudança DATE DATETIME
GMTTIMESTAMP        
INTERVAL       INTERVAL
BLOB BLOB Início da mudançaBINARY, VARBINARY, IMAGE, UNIQUEIDENTIFIERFim da mudança RAW LONG, RAW BLOB  
BIT        
Nota:
  1. Se uma coluna do banco de dados Oracle com o tipo de dados NUMBER estiver definida com uma precisão (P) e escala (S) explícitas, ela será lançada para um valor ESQL DECIMAL; de outra maneira, será lançada para um FLOAT.
    Por exemplo, uma instrução ESQL semelhante à seguinte:
    SET OutputRoot.xxx[]
      = (SELECT T.department FROM Database.personnel AS T);

    em que Database.personnel é resolvido para uma coluna TINYINT em uma tabela do banco de dados do SQL Server, resulta em uma lista de valores ESQL INTEGER, sendo designados a OutputRoot.xxx .

    Por comparação, uma consulta idêntica, em que Database.personnel é resolvido para uma coluna NUMBER() em um banco de dados Oracle, resulta em uma lista de valores ESQL FLOAT sendo designados a OutputRoot.xxx.

Conceitos relacionados
Visão Geral do ESQL
Tarefas relacionadas
Desenvolvendo ESQL
Referências relacionadas
Supoete para dados Unicode e DBCS em Bancos de Dados
Funções Complexas ESQL
Função CAST
Coerções Suportadas
Casts Implícitos
Bancos de Dados Suportados
Avisos | Marcas Registradas | Downloads | Biblioteca | Suporte | Feedback

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
Última atualização : 2009-02-13 16:12:47

ak05730_