• Index
  •  » Talend Open Studio for Data Integration » Usage, Operation
  •  » Pb imprt schema from Xml file on Sybase

#1 2007-12-03 15:07:28

mouseman
Member
Registered: 2006-10-24
Posts: 42

Pb imprt schema from Xml file on Sybase

Tags: [sybase, xml]

Hi,

I have some table definde from a sybase database.
Each DOUBLE PRECISION row is recognize by Tod as a string.

I have exported all row in an Xml file.
In this XML file, i have changed all id_strin in id_Double for DOUBLE PRECISION row.
and i want to re-import definition from thi xml file.

When i select the import button, all row desapear.. whith an error...

Does it work, or am i obliged to modify each row type manually ?

i am using 2.2.0.GA_r6191


Uploaded Images

Offline

#2 2007-12-04 04:15:04

shong
Talend team
Registered: 2007-08-29
Posts: 10289
Website

Re: Pb imprt schema from Xml file on Sybase

Hi

Currently, there is no DOUBLE PRECISION dbtype defined in mapping_Sybase.xml for sybase database. I have reported a [Bugtracker, bug 2565, fixed] add DOUBLE PRECISION dbtype to sybase database about this issue.
You can go to Windows -->Preferences-->Talend-->Metadata of TalendType-->mapping_Sybase.xml to add a DOUBLE PRESICION dbtype.
I show a updated mapping_Sybase.xml, please see the screenshot.

Code:

<?xml version="1.0"?>
<mapping>
    <dbms product="SYBASE" id="sybase_id" label="Mapping Sybase"
        default="true">
        <dbTypes>
            <dbType type="BIT" ignoreLen="true" ignorePre="true" />
            <dbType type="BIGINT" ignoreLen="true" ignorePre="true" />
            <dbType type="BINARY" ignoreLen="true" ignorePre="true" />
            <dbType type="CHAR" defaultLength="50" ignorePre="true"/>
            <dbType type="CHARACTER" ignoreLen="true" ignorePre="true" />
            <dbType type="CHARACTER VARYING" ignoreLen="true" ignorePre="true" />
            <dbType type="DATE" ignoreLen="true" ignorePre="true" />
            <dbType type="DATETIME" ignoreLen="true" ignorePre="true" />
            <dbType type="DECIMAL" defaultLength="20" defaultPrecision="10" />
            <dbType type="DOUBLE" ignoreLen="true" ignorePre="true" />
  --------------------------------->  <dbType type="DOUBLE PRECISION" ignoreLen="true" ignorePre="true" />
            <dbType type="FLOAT" ignoreLen="true" ignorePre="true" />
            <dbType type="INT" ignoreLen="true" ignorePre="true" />
            <dbType type="NUMERIC" defaultLength="20" defaultPrecision="10"/>
            <dbType type="REAL" />
            <dbType type="SMALLINT" ignoreLen="true" ignorePre="true" />
            <dbType type="SMALLDATETIME" ignoreLen="true" ignorePre="true" />
            <dbType type="TIME" ignoreLen="true" ignorePre="true" />    
            <dbType type="TIMESTAMP" ignoreLen="true" ignorePre="true" />
            <dbType type="TINYINT" ignoreLen="true" ignorePre="true" />
            <dbType type="UNIQUEIDENTIFIER" ignoreLen="true" ignorePre="true" />
            <dbType type="UNIQUEIDENTIFIERSTR" ignoreLen="true" ignorePre="true" />
            <dbType type="VARCHAR" default="true" defaultLength="200" ignorePre="true" />
            <dbType type="VARBINARY" ignoreLen="true" ignorePre="true" />
        </dbTypes>

        <language name="java">
            <talendToDbTypes><!-- Adviced mappings  -->
                <talendType type="id_List"/>
                <talendType type="id_Boolean">    
                    <dbType type="BIT" default="true" />                
                </talendType>
                <talendType type="id_Byte">
                    <dbType type="TINYINT" default="true" />
                    <dbType type="BIGINT" />
                    <dbType type="INT" />
                    <dbType type="SMALLINT" />            
                </talendType>
                <talendType type="id_byte[]">
                </talendType>
                <talendType type="id_Character">
                    <dbType type="CHAR" default="true" />
                    <dbType type="CHARACTER"/>
                    <dbType type="CHARACTER VARYING"/>
                    <dbType type="VARCHAR"/>
                    <dbType type="UNIQUEIDENTIFIERSTR"/>
                </talendType>
                <talendType type="id_Date">
                    <dbType type="DATE" default="true" />
                    <dbType type="DATETIME" />    
                    <dbType type="SMALLDATETIME" />
                    <dbType type="TIME" />
                    <dbType type="TIMESTAMP" />                
                </talendType>
                <talendType type="id_Double">
                    <dbType type="DOUBLE" default="true" />
                            ---------------------------------------> <dbType type="DOUBLE PRECISION"  />
                    <dbType type="FLOAT" />    
                    <dbType type="DECIMAL"/>
                    <dbType type="REAL"/>    
                    <dbType type="NUMERIC"/>        
                </talendType>
                <talendType type="id_Float">
                    <dbType type="FLOAT" default="true" />
                    <dbType type="DOUBLE"/>
                    <dbType type="DECIMAL" />
                    <dbType type="NUMERIC"/>
                    <dbType type="REAL"/>
                </talendType>
                <talendType type="id_Integer">
                    <dbType type="INT" default="true" />
                    <dbType type="BIGINT" />
                    <dbType type="SMALLINT"/>
                    <dbType type="TINYINT"/>
                </talendType>
                <talendType type="id_Long">
                    <dbType type="BIGINT" default="true" />    
                    <dbType type="INT"/>
                    <dbType type="SMALLINT"/>
                    <dbType type="TINYINT"/>
                </talendType>
                <talendType type="id_Object">
                    <dbType type="BINARY" default="true"/>
                    <dbType type="VARBINARY" />
                    <dbType type="UNIQUEIDENTIFIER" />
                </talendType>
                <talendType type="id_Short">
                    <dbType type="SMALLINT" default="true" />
                    <dbType type="INT" />
                    <dbType type="BIGINT"/>
                    <dbType type="TINYINT" />
                </talendType>
                <talendType type="id_String">
                    <dbType type="VARCHAR" default="true" />
                    <dbType type="UNIQUEIDENTIFIERSTR" />
                    <dbType type="CHAR"/>
                    <dbType type="CHARACTER" />
                    <dbType type="CHARACTER VARYING" />        
                </talendType>
            </talendToDbTypes>
            <dbToTalendTypes>
                <dbType type="BIT">
                    <talendType type="id_Boolean" default="true" />
                </dbType>
                <dbType type="BIGINT">
                    <talendType type="id_Long" default="true" />
                </dbType>
                <dbType type="BINARY">
                    <talendType type="id_Object" default="true" />
                </dbType>
                <dbType type="CHAR">
                    <talendType type="id_String" default="true" />
                    <talendType type="id_Character"/>
                </dbType>
                <dbType type="CHARACTER">
                    <talendType type="id_String" default="true" />
                    <talendType type="id_Character"/>
                </dbType>
                <dbType type="CHARACTER VARYING">
                    <talendType type="id_String" default="true" />
                </dbType>
                <dbType type="DATE">
                    <talendType type="id_Date" default="true" />
                </dbType>
                <dbType type="DATETIME">
                    <talendType type="id_Date" default="true" />
                </dbType>
                <dbType type="DECIMAL">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>
                <dbType type="DOUBLE">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>
             --------------------------------------> <dbType type="DOUBLE PRECISION">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>
                                                                <dbType type="FLOAT">
                    <talendType type="id_Float" default="true" />
                    <talendType type="id_Double"/>
                </dbType>
                <dbType type="INT">
                    <talendType type="id_Integer" default="true" />
                    <talendType type="id_Short"/>
                    <talendType type="id_Long"/>
                </dbType>
                <dbType type="NUMERIC">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>
                <dbType type="REAL">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>
                <dbType type="SMALLINT">
                    <talendType type="id_Short" default="true" />
                </dbType>
                <dbType type="SMALLDATETIME">
                    <talendType type="id_Date" default="true" />
                </dbType>
                <dbType type="TIME">
                    <talendType type="id_Date" default="true" />
                </dbType>
                <dbType type="TIMESTAMP">
                    <talendType type="id_Date" default="true" />
                </dbType>
                <dbType type="TINYINT">
                    <talendType type="id_Byte" default="true" />
                    <talendType type="id_Integer"/>
                    <talendType type="id_Long"/>
                    <talendType type="id_Short"/>
                </dbType>
                <dbType type="UNIQUEIDENTIFIER">
                    <talendType type="id_Object" default="true" />
                </dbType>
                <dbType type="UNIQUEIDENTIFIERSTR">
                    <talendType type="id_String" default="true" />
                </dbType>
                <dbType type="VARCHAR">
                    <talendType type="id_String" default="true" />
                </dbType>
                <dbType type="VARBINARY">
                    <talendType type="id_Object" default="true" />
                </dbType>
            </dbToTalendTypes>
        </language>
        <language name="perl">
            <talendToDbTypes>
                <talendType type="int">    
                    <dbType type="INT" default="true" />    
                    <dbType type="BIGINT"/>
                    <dbType type="SMALLINT"/>
                    <dbType type="TINYINT"/>
                </talendType>
                <talendType type="decimal">
                    <dbType type="DECIMAL" default="true" />
                    <dbType type="NUMERIC" />    
                    <dbType type="FLOAT"/>
                    <dbType type="REAL"/>
                    <dbType type="DOUBLE"/>        
                </talendType>
                <talendType type="boolean">
                    <dbType type="BIT" default="true" />        
                </talendType>
                <talendType type="string">
                    <dbType type="VARCHAR" default="true" />
                    <dbType type="CHAR" />        
                    <dbType type="CHARACTER"/>
                    <dbType type="CHARACTER VARYING"/>
                    <dbType type="UNIQUEIDENTIFIERSTR"/>
                    <dbType type="BINARY"/>
                    <dbType type="VARBINARY"/>            
                    <dbType type="UNIQUEIDENTIFIER"/>            
                </talendType>
                <talendType type="datetime">
                    <dbType type="DATETIME" default="true" />
                    <dbType type="DATE" />    
                    <dbType type="SMALLDATETIME"/>
                    <dbType type="TIMESTAMP"/>
                    <dbType type="TIME"/>    
                </talendType>
                <talendType type="date">
                    <dbType type="DATE" default="true" />
                    <dbType type="DATETIME"/>
                    <dbType type="SMALLDATETIME"/>
                    <dbType type="TIMESTAMP"/>
                    <dbType type="TIME"/>    
                </talendType>
            </talendToDbTypes>
            <dbToTalendTypes>
                <dbType type="BIT">
                    <talendType type="boolean" default="true"/>
                </dbType>
                <dbType type="BIGINT">
                    <talendType type="int" default="true" />
                </dbType>
                <dbType type="BINARY">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="CHAR">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="CHARACTER">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="CHARACTER VARYING">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="DATE">
                    <talendType type="date" default="true" />
                </dbType>
                <dbType type="DATETIME">
                    <talendType type="datetime" default="true" />
                </dbType>
                <dbType type="DECIMAL">
                    <talendType type="decimal" default="true" />
                </dbType>
                <dbType type="DOUBLE">
                    <talendType type="decimal" default="true" />
                </dbType>
                <dbType type="FLOAT">
                    <talendType type="decimal" default="true" />
                </dbType>
                <dbType type="INT">
                    <talendType type="int" default="true" />
                </dbType>
                <dbType type="NUMERIC">
                    <talendType type="decimal" default="true" />
                </dbType>
                <dbType type="REAL">
                    <talendType type="decimal" default="true" />
                </dbType>
                <dbType type="SMALLINT">
                    <talendType type="int" default="true" />
                </dbType>
                <dbType type="SMALLDATETIME">
                    <talendType type="datetime" default="true" />
                </dbType>
                <dbType type="TIME">
                    <talendType type="datetime" default="true" />
                </dbType>
                <dbType type="TIMESTAMP">
                    <talendType type="datetime" default="true" />
                </dbType>
                <dbType type="TINYINT">
                    <talendType type="int" default="true" />
                </dbType>
                <dbType type="UNIQUEIDENTIFIER">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="UNIQUEIDENTIFIERSTR">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="VARCHAR">
                    <talendType type="string" default="true" />
                </dbType>
                <dbType type="VARBINARY">
                    <talendType type="string" default="true" />
                </dbType>
            </dbToTalendTypes>
        </language>
    </dbms>

</mapping>

Thanks for your support!

Best regards

         shong


Email:shong@talend.com
Choose Talend, Enjoy Talend!
New & Event: Talend Help Center
Talend-->the leader of open source data management and application integration solutions!

Offline

#3 2007-12-04 10:01:01

mouseman
Member
Registered: 2006-10-24
Posts: 42

Re: Pb imprt schema from Xml file on Sybase

hi,

thank you for this informations.

I can give you more details.
I did your modifications without succes... BUT...

i have seen that when i do a "retrieve schema" on a sybase table, the type initialised is DOUBLE PRECIS
( without the ION at the end )

so i did this modification on the mapping file :

           <dbType type="DOUBLE PRECIS" ignoreLen="true" ignorePre="true" />

and

        <talendType type="id_Double">
                  <dbType type="DOUBLE" default="true" />
                        <dbType type="DOUBLE PRECISION"  />
                        <dbType type="DOUBLE PRECIS"  />
            <dbType type="FLOAT" />   
            <dbType type="DECIMAL"/>
            <dbType type="REAL"/>   
            <dbType type="NUMERIC"/>       
        </talendType>

and

                <dbType type="DOUBLE PRECIS">
                    <talendType type="id_Double" default="true" />
                    <talendType type="id_Float"/>
                </dbType>

and now the retrieve schema is correct...

(cf image)

bye


Uploaded Images

Offline

  • Index
  •  » Talend Open Studio for Data Integration » Usage, Operation
  •  » Pb imprt schema from Xml file on Sybase

Board footer

Powered by FluxBB