CSVのリストを古い値から新しい値に更新するためのコードを以下に示します。しかし、それは一部の製品のためのエラーをトリガー:MagentoのCSVからSKUを更新する - 整合性制約違反:1062エラー
は、Magentoのから製品を取得できません:SQLSTATE [23000]:整合性制約違反:1062重複したエントリ '168-122-1-7' キー1
include_once '../app/Mage.php';
Mage::app();
$updates_file="/home/varsityk/public_html/csvs/sku2sku.csv";
$sku_entry=array();
$updates_handle=fopen($updates_file, 'r');
if($updates_handle) {
while($sku_entry=fgetcsv($updates_handle, 1000, ",")) {
$old_sku=$sku_entry[0];
$new_sku=$sku_entry[1];
echo "<br>Updating ".$old_sku." to ".$new_sku." - ";
try {
$get_item = Mage::getModel('catalog/product')->loadByAttribute('sku', $old_sku);
if ($get_item) {
$get_item->setSku($new_sku)->save();
echo "successful";
} else {
echo "item not found";
}
} catch (Exception $e) {
echo "Cannot retrieve products from Magento: ".$e->getMessage()."<br>";
return;
}
}
}
fclose($updates_handle);
こんにちは、おかげで私が手にエラーがある: は、Magentoのから製品を取得できません:SQLSTATE [23000]:整合性制約違反:1452は、子行を追加または更新できません:外部キー制約が失敗した( '個人用サイト/ mg_catalog_product_entity'、 CONSTRAINT 'FK_CATALOG_PRODUCT_ENTITY_ATTRIBUTE_SET_ID'外部キー(' attribute_set_id')REFERENCES 'mg_eav_attribute_set'(' attribute_set_id')ON) – user398894