Menu

#2 Import error on empty icecat_id

open
nobody
None
5
2012-09-19
2012-09-19
Anonymous
No

DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 7 at /home/ajenbo/IcecatToPIMImport/lib/atomsql.pm line 584.
lib/atomsql.pm:587, ProductFamiliesListHandler.pm:295
Wed Sep 19 12:11:42 2012 960069 [9076]<stack_trace>

at /home/ajenbo/IcecatToPIMImport/lib/atomlog.pm line 133
atomlog::error_execute('INSERT INTO vocabulary
(sid, langid, value,icecat_id)
...', undef) called at /home/ajenbo/IcecatToPIMImport/lib/atomsql.pm line 587
atomsql::do_statement('INSERT INTO vocabulary
(sid, langid, value,icecat_id)
...') called at ProductFamiliesListHandler.pm line 295
ProductFamiliesListHandler::insert_product_family_name('ProductFamiliesListHandler=HASH(0x35b90e8)') called at ProductFamiliesListHandler.pm line 133
ProductFamiliesListHandler::start_element('ProductFamiliesListHandler=HASH(0x35b90e8)', 'HASH(0x34eb3a8)') called at /usr/share/perl5/XML/SAX/Base.pm line 298
XML::SAX::Base::__ANON__('HASH(0x34eb3a8)') called at /usr/share/perl5/XML/SAX/Base.pm line 272
XML::SAX::Base::start_element('XML::SAX::Expat=HASH(0x3524c08)', 'HASH(0x34eb3a8)') called at /usr/share/perl5/XML/SAX/Expat.pm line 225
XML::SAX::Expat::_handle_start('XML::Parser::Expat=HASH(0x34b1838)', 'Name', 'ID', 963914, 'Value', 'EX2F', 'langid', 1) called at /usr/lib/perl5/XML/Parser/Expat.pm line 470
XML::Parser::Expat::parse('XML::Parser::Expat=HASH(0x34b1838)', '*XML::Parser::FILE') called at /usr/lib/perl5/XML/Parser.pm line 187
eval {...} called at /usr/lib/perl5/XML/Parser.pm line 186
XML::Parser::parse('XML::Parser=HASH(0x35b8c38)', '*XML::Parser::FILE') called at /usr/lib/perl5/XML/Parser.pm line 233
eval {...} called at /usr/lib/perl5/XML/Parser.pm line 232
XML::Parser::parsefile('XML::Parser=HASH(0x35b8c38)', '/home/ajenbo/IcecatToPIMImport/files/SupplierProductFamiliesL...') called at /usr/share/perl5/XML/SAX/Expat.pm line 75
XML::SAX::Expat::_parse_systemid('XML::SAX::Expat=HASH(0x3524c08)', '/home/ajenbo/IcecatToPIMImport/files/SupplierProductFamiliesL...') called at /usr/share/perl5/XML/SAX/Base.pm line 2608
XML::SAX::Base::parse('XML::SAX::Expat=HASH(0x3524c08)', 'HASH(0x322b500)') called at /usr/share/perl5/XML/SAX/Base.pm line 2649
XML::SAX::Base::parse_uri('XML::SAX::Expat=HASH(0x3524c08)', '/home/ajenbo/IcecatToPIMImport/files/SupplierProductFamiliesL...') called at PIMImporter.pm line 411
PIMImporter::import_xml_to_PIM('PIMImporter=HASH(0x19d2998)', 'http://data.icecat.biz/export/freexml/refs/', 'SupplierProductFamiliesListRequest.xml.gz', 'ProductFamiliesListHandler=HASH(0x35b90e8)', 0) called at PIMImporter.pm line 124
PIMImporter::import_references('PIMImporter=HASH(0x19d2998)') called at PIMImporter.pm line 49
PIMImporter::do_import('PIMImporter=HASH(0x19d2998)') called at ./importFromIcecat.pl line 7
lib/atomsql.pm:587, ProductFamiliesListHandler.pm:295
Wed Sep 19 12:11:42 2012 960927 [9076]can't execute SQL statement <sql>INSERT INTO vocabulary
(sid, langid, value,icecat_id)
VALUES(
13322,
1,
'EX2F',
)</sql>
<err_text>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 7</err_text>
</stack_trace>

Discussion

  • Anonymous

    Anonymous - 2012-09-19

    Fixing this could be as easy as:
    ProductFamiliesListHandler.pm (279)
    WHERE icecat_id = $self->{product_family}->{icecat_id}";
    ->
    WHERE icecat_id = " . int($self->{product_family}->{icecat_id});

    ProductFamiliesListHandler.pm (294)
    $self->{product_family_name}->{icecat_id}
    ->
    " . int($self->{product_family_name}->{icecat_id}) . "

     
  • Anonymous

    Anonymous - 2012-09-19

    It seams that the PIM importer is failling to import values with empty numbers

    This happens once for Categories, and a lot for CategoryFeatureList and Products.

    I'm not experienced enough with Perl to fix this, but it should be as simple as casting the value to INT before injecting it in to the SQL statement.

    DBD::mysql::st execute failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '
    searchable=0,
    thumb_pic='',
    visible='0'
    WHERE catid=1' at line 2 at /home/ajenbo/IcecatToPIMImport/lib/atomsql.pm line 584.
    lib/atomsql.pm:587, CategoriesListHandler.pm:352
    Wed Sep 19 11:50:13 2012 761256 [9076]<stack_trace>

    at /home/ajenbo/IcecatToPIMImport/lib/atomlog.pm line 133
    atomlog::error_execute('UPDATE category SET
    ucatid=,
    searchable=0,
    thumb_...', undef) called at /home/ajenbo/IcecatToPIMImport/lib/atomsql.pm line 587
    atomsql::do_statement('UPDATE category SET
    ucatid=,
    searchable=0,
    thumb_...') called at CategoriesListHandler.pm line 352
    CategoriesListHandler::update_category('CategoriesListHandler=HASH(0x344c510)') called at CategoriesListHandler.pm line 65
    CategoriesListHandler::start_element('CategoriesListHandler=HASH(0x344c510)', 'HASH(0x34990d0)') called at /usr/share/perl5/XML/SAX/Base.pm line 298
    XML::SAX::Base::__ANON__('HASH(0x34990d0)') called at /usr/share/perl5/XML/SAX/Base.pm line 272
    XML::SAX::Base::start_element('XML::SAX::Expat=HASH(0x34b3278)', 'HASH(0x34990d0)') called at /usr/share/perl5/XML/SAX/Expat.pm line 225
    XML::SAX::Expat::_handle_start('XML::Parser::Expat=HASH(0x34b33f8)', 'Category', 'ID', 1, 'LowPic', '', 'Score', 0, 'Searchable', ...) called at /usr/lib/perl5/XML/Parser/Expat.pm line 470
    XML::Parser::Expat::parse('XML::Parser::Expat=HASH(0x34b33f8)', '*XML::Parser::FILE') called at /usr/lib/perl5/XML/Parser.pm line 187
    eval {...} called at /usr/lib/perl5/XML/Parser.pm line 186
    XML::Parser::parse('XML::Parser=HASH(0x344d110)', '*XML::Parser::FILE') called at /usr/lib/perl5/XML/Parser.pm line 233
    eval {...} called at /usr/lib/perl5/XML/Parser.pm line 232
    XML::Parser::parsefile('XML::Parser=HASH(0x344d110)', '/home/ajenbo/IcecatToPIMImport/files/CategoriesList.xml') called at /usr/share/perl5/XML/SAX/Expat.pm line 75
    XML::SAX::Expat::_parse_systemid('XML::SAX::Expat=HASH(0x34b3278)', '/home/ajenbo/IcecatToPIMImport/files/CategoriesList.xml') called at /usr/share/perl5/XML/SAX/Base.pm line 2608
    XML::SAX::Base::parse('XML::SAX::Expat=HASH(0x34b3278)', 'HASH(0x344c858)') called at /usr/share/perl5/XML/SAX/Base.pm line 2649
    XML::SAX::Base::parse_uri('XML::SAX::Expat=HASH(0x34b3278)', '/home/ajenbo/IcecatToPIMImport/files/CategoriesList.xml') called at PIMImporter.pm line 411
    PIMImporter::import_xml_to_PIM('PIMImporter=HASH(0x19d2998)', 'https://data.icecat.biz/export/freexml/refs/', 'CategoriesList.xml.gz', 'CategoriesListHandler=HASH(0x344c510)', 0) called at PIMImporter.pm line 109
    PIMImporter::import_references('PIMImporter=HASH(0x19d2998)') called at PIMImporter.pm line 49
    PIMImporter::do_import('PIMImporter=HASH(0x19d2998)') called at ./importFromIcecat.pl line 7
    lib/atomsql.pm:587, CategoriesListHandler.pm:352
    Wed Sep 19 11:50:13 2012 762691 [9076]can't execute SQL statement <sql>UPDATE category SET
    ucatid=,
    searchable=0,
    thumb_pic='',
    visible='0'
    WHERE catid=1 </sql>
    <err_text>You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '
    searchable=0,
    thumb_pic='',
    visible='0'
    WHERE catid=1' at line 2</err_text>
    </stack_trace>

     
  • Anonymous

    Anonymous - 2012-09-19

    CategoriesListHandler.pm (316)
    $self->{category}->{ucatid},
    ->
    " . int($self->{category}->{ucatid}) . ",

    CategoriesListHandler.pm (347)
    ucatid= $self->{category}->{ucatid},
    ->
    ucatid= " . int($self->{category}->{ucatid}) . ",

     

Log in to post a comment.

MongoDB Logo MongoDB