Customer Portal

DB_OUTPUT_TABLE not support unicode field name

Comments 6

  • Avatar
    hwhwhw
    0
    Comment actions Permalink
    Very much like to be able to support unicode field name encoding :)
  • Avatar
    avackova
    0
    Comment actions Permalink
    Hello, there is no problem with encoding here, but with the query that doesn't have input parameters. Try to set query insert into t1 (c2) values (?) with data flowing on the edge or execute this query by DBExecute component.
  • Avatar
    hwhwhw
    0
    Comment actions Permalink
    But the configuration has not changed, I used the English field names on the successful implementation can, please re-check.
    ===============================================

    <Node id="DELIMITED_DATA_READER_0" type="DELIMITED_DATA_READER" fileURL="c:/test/lxr.txt" />

    <Node id="DB_OUTPUT_TABLE_0" type="DB_OUTPUT_TABLE" dbConnection="mysql_133" sqlQuery="insert into t1 (c2) values ($mc)" />

    <Edge id="TASK_EDGE_0" fromNode="DELIMITED_DATA_READER_0:0" toNode="DB_OUTPUT_TABLE_0:0" metadata="c:/test/a.fmt" />

    ===============================================

    a.fmt
    <?xml version="1.0" encoding="gb2312"?>
    <Record name="DB_OUTPUT_TABLE_0" type="delimited">
    <Field name="mc" type="string" format="" nullable="true" default="" size="5" length="5" scale="0" delimiter="\n"/>
    </Record>

    ===============================================

    At present, only use the $ symbol can achieve very good demand for the following.
    And? Symbolic way Can not Satisfy.
    http://forum.cloveretl.org/viewtopic.php?t=299
  • Avatar
    hwhwhw
    0
    Comment actions Permalink
    1)
    AGGREGATE componentorg.jetel.component.aggregate.AggregateMappingParser.java

    2)
    org.jetel.metadata.DataRecordMetadata.java
    org.jetel.metadata.DataFieldMetadata.java
    org.jetel.util.string.StringUtils.java
    private final static String OBJECT_NAME_PATTERN = "[_A-Za-z]+[_A-Za-z0-9]*";


    Did not consider the place a lot of unicode field name
  • Avatar
    avackova
    0
    Comment actions Permalink
    Yes, that's true: only Latin letters and digits can be used in field name. Different chars could cause problems when moving graphs between computers.
  • Avatar
    hwhwhw
    0
    Comment actions Permalink
    Hope can be solved by modifying the questions below.

    <Node id="DELIMITED_DATA_READER_0" type="DELIMITED_DATA_READER" fileURL="c:/test/lxr.txt" />

    <Node id="DB_OUTPUT_TABLE_0" type="DB_OUTPUT_TABLE" dbConnection="mysql_133" sqlQuery="insert into t1 (c2) values ($名称)" />

    <Edge id="TASK_EDGE_0" fromNode="DELIMITED_DATA_READER_0:0" toNode="DB_OUTPUT_TABLE_0:0" metadata="c:/test/a.fmt" />

Please sign in to leave a comment.