Getting wrong native Type in case of flat file connection.
aakash03 Mar 29, 2017 9:50 AMHi,
I am using below schema file.
file schema:
---------------
[testFile.txt]
Format=Delimited("|")
ColNameHeader=False
CharacterSet=ANSI
Col1=CustId Integer
Col2=AccountNum Integer
Col3=AccountType varchar
Col4=FirstName varchar
Col5=LastName varchar
Col6=CompanyName varchar
Col7=Email varchar
Col8=Gender varchar
Col9=PhoneNumber varchar
Col10=City varchar
Col11=State varchar
Col12=ZipCode varchar
Col13=Country varchar
Col14=TransactionAmount Float
Col15=CurrencyCode varchar
Col16=TransactionDate DATETIME MM-dd-yyyy HH:mm:ss.SSS
Using below teiid Configuration:
Jboss wildfly 10.0.0
Teiid 9.1.3
I have successfully created the connection with this file.
Schema returned by AdminApiClient.getSchema() :
CREATE FOREIGN TABLE Test (
CustId integer OPTIONS (ANNOTATION 'CustId', NAMEINSOURCE '"CustId"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'INTEGER'),
AccountNum integer OPTIONS (ANNOTATION 'AccountNum', NAMEINSOURCE '"AccountNum"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'INTEGER'),
AccountType clob OPTIONS (ANNOTATION 'AccountType', NAMEINSOURCE '"AccountType"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
FirstName clob OPTIONS (ANNOTATION 'FirstName', NAMEINSOURCE '"FirstName"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
LastName clob OPTIONS (ANNOTATION 'LastName', NAMEINSOURCE '"LastName"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
CompanyName clob OPTIONS (ANNOTATION 'CompanyName', NAMEINSOURCE '"CompanyName"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
Email clob OPTIONS (ANNOTATION 'Email', NAMEINSOURCE '"Email"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
Gender clob OPTIONS (ANNOTATION 'Gender', NAMEINSOURCE '"Gender"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
PhoneNumber clob OPTIONS (ANNOTATION 'PhoneNumber', NAMEINSOURCE '"PhoneNumber"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
City clob OPTIONS (ANNOTATION 'City', NAMEINSOURCE '"City"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
State clob OPTIONS (ANNOTATION 'State', NAMEINSOURCE '"State"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
ZipCode clob OPTIONS (ANNOTATION 'ZipCode', NAMEINSOURCE '"ZipCode"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
Country clob OPTIONS (ANNOTATION 'Country', NAMEINSOURCE '"Country"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'LONGVARCHAR'),
TransactionAmount double OPTIONS (ANNOTATION 'TransactionAmount', NAMEINSOURCE '"TransactionAmount"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'DOUBLE'),
CurrencyCode clob OPTIONS (ANNOTATION 'CurrencyCode', NAMEINSOURCE '"CurrencyCode"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'AdminApiClient.getSchema()'),
TransactionDate timestamp OPTIONS (ANNOTATION 'TransactionDate', NAMEINSOURCE '"TransactionDate"', CHAR_OCTET_LENGTH 254, NATIVE_TYPE 'TIMESTAMP')
) OPTIONS (ANNOTATION 'Test', NAMEINSOURCE '"Test"', UPDATABLE TRUE);
If we compare input file schema and schema returned by AdminApiClient.getSchema() ,we found mismatch in native Type as shown in the below example :
for example:
FieldName nativeType in input Schema file nativeType in Schema( AdminApiClient.getSchema)
AccountType varchar LONGVARCHAR
TransactionAmount Float DOUBLE
Please help me on this.
Thanks,
Aakash K Sen