Je travaille sur un module qui nécessite l'accès à certaines données tabulaires fournies par une source externe. Il ne s'agit que de deux colonnes mais compte environ 40000 lignes.
Actuellement, mon module analyse simplement le CSV dans son intégralité lorsque cela est nécessaire. Cela fonctionne bien, mais comme le fichier fait environ 450 Ko, cela consommera des ressources serveur une fois déployé sur un site de production.
Je voudrais déplacer ces données vers une table Magento et j'ai des problèmes.
J'utilise les méthodes RDBMS dans mon script d'installation, ala:
$installer = $this;
$installer->startSetup();
$table = $installer->getConnection()
->newTable($installer->getTable('my_table'))
->addColumn('column_a', Varien_Db_Ddl_Table::TYPE_TEXT, 5, array(
'nullable' => false,
), 'Column A')
->addColumn('column_b', Varien_Db_Ddl_Table::TYPE_TEXT, 3, array(
'nullable' => false,
), 'Column B');
$installer->getConnection()->createTable($table);
$installer->endSetup();
Cela fonctionne très bien pour créer ma table, mais en fait, obtenir mes données me fait mal à la tête (je suis toujours un noob en matière de gestion de base de données).
Idéalement, je voudrais simplement analyser mon fichier CSV et insérer des valeurs dans le tableau sans avoir à faire face à un tas de copier / coller.
Existe-t-il des méthodes intégrées pour gérer les données CSV arbitraires, ou sont-elles toutes conçues pour gérer exactement ce dont elles ont besoin? Quelle serait la meilleure approche pour importer mes données dans Magento?