2014-01-11 99 views
0

我需要将Magento的订单表单中的数据插入到外部数据库中,请详细说明如何实现它。 目前,当我们点击下订单时,它将插入表sales_flat_order,我需要将其保存到外部数据库中。 因为我是Magento的新手,请不要介意这是否简单。将Magento的详细信息插入到外部数据库中

回答

0

当你说外部数据库,这是否意味着在同一个盒子上的另一个数据库?或另一个盒子上的远程数据库?表格是否保持不变,或所有字段和附加信息都不同?

途径: API:http://www.magentocommerce.com/api/rest/Resources/Orders/sales_orders.html 如果是遥控盒,您可以使用REST API拉订单的(一旦API是积极的,角色创建,用户被分配和连接),并推回信息以编程方式提供给新盒子。

数据流: 您可以设置一个数据流来导出订单信息,拉入CSV/XML,解析并将所需的零件上传到新的数据库。

数据流扩展: 同上,但是在做所有自己编程,可以安装像一个延伸:http://www.wyomind.com/orders-export-tool-magento.html,并将它FTP信息发送到远程服务器,以便您可以检查/文件解析到新的数据库作为需要。

你能透露更多关于环境,数据/订单的数量等吗? 谢谢。

---更新:

根据您的响应,这听起来少了Magento的问题,在这里和更多的MySQL的问题。 在这种情况下,您可以执行一些操作,如“复制”或将表数据复制到其他本地数据库。

如果您不是处理的订单太多,以下可能会满足您1次处理的需求。如果您处理大量订单,则可能需要扩展该方法。

##Direct Copy: 
#using stage_magento to represent your other DB 
#assuming this is done with a user that has correct permissions on both databases. 

#create the table 
CREATE TABLE stage_magento.sales_flat_order LIKE production_magento.sales_flat_order; 
#copy the data 
INSERT stage_magento.sales_flat_order SELECT * FROM production_magento.sales_flat_order; 


##################### 
## Option 2, export to file system, import to new db 
##Indirect, Export from DB/Table 
SELECT * FROM production_magento.sales_flat_order INTO OUTFILE '/tmp/sales_flat_order.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' ; 
##Import into New DB/Table 
LOAD DATA INFILE '/tmp/sales_flat_order.csv' INTO TABLE stage_magento.sales_flat_order FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' ; 
+0

目前的情况是我有另一个数据库在同一个盒子。在这两个DB中,表名和列是相同的。 –

相关问题