2012-08-07 17 views
7

में सभी कैटलॉग उत्पादों को कैसे निकालें I Magento में एक उत्पाद सूची आयात करने का प्रयास कर रहा हूं। पहले परीक्षण में, मुझे सफलता मिली, लेकिन उत्पाद पीछे या सामने के कार्यालय में दिखाई नहीं दे रहे थे।Magento

आयात प्रक्रिया को फिर से करने के बाद, मुझे पता चला कि मेरे पास डेटाबेस पर आयातित उत्पाद हैं, लेकिन, अभी भी नहीं दिख रहे हैं।

यदि मैं डी कैटलॉग एक्सेस करता हूं> श्रेणियां प्रबंधित करें> डिफ़ॉल्ट श्रेणी -> श्रेणी उत्पाद मैं आयातित उत्पादों को देख सकता हूं।

बाद में, मैं अपने आयात फ़ाइल में एक त्रुटि पाया ... और मैं सही ढंग से 'SKU' क्षेत्र में उत्पादों आयात कर सकते हैं

बजाय .... मैं पाया है संघर्ष ...

वे पहले उत्पाद अभी तक प्रदर्शित नहीं हो रहे हैं, लेकिन वे अभी भी डेटाबेस पर हैं ...

प्रश्न: यदि मैं उन तक नहीं पहुंच पा रहा हूं तो मैं उन उत्पादों को कैसे हटा सकता हूं ???? क्या मैं डेटाबेस पर सीधे ऐसा कर सकता हूं? पंक्तियों को हटाने से अन्य मुद्दे उत्पन्न हो सकते हैं?

किसी भी सुराग की सराहना की जाएगी!

Magento ver। 1.7.0.1

उत्तर

18

सभी उत्पाद तालिकाओं को रीसेट करें। सावधान रहें, स्क्रिप्ट के नीचे आपके सभी उत्पाद डेटा को हटा देगा, इसलिए इसे सावधानी से करें।

SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE TABLE `catalog_product_bundle_option`; 
TRUNCATE TABLE `catalog_product_bundle_option_value`; 
TRUNCATE TABLE `catalog_product_bundle_selection`; 
TRUNCATE TABLE `catalog_product_entity_datetime`; 
TRUNCATE TABLE `catalog_product_entity_decimal`; 
TRUNCATE TABLE `catalog_product_entity_gallery`; 
TRUNCATE TABLE `catalog_product_entity_int`; 
TRUNCATE TABLE `catalog_product_entity_media_gallery`; 
TRUNCATE TABLE `catalog_product_entity_media_gallery_value`; 
TRUNCATE TABLE `catalog_product_entity_text`; 
TRUNCATE TABLE `catalog_product_entity_tier_price`; 
TRUNCATE TABLE `catalog_product_entity_varchar`; 
TRUNCATE TABLE `catalog_product_link`; 
TRUNCATE TABLE `catalog_product_link_attribute`; 
TRUNCATE TABLE `catalog_product_link_attribute_decimal`; 
TRUNCATE TABLE `catalog_product_link_attribute_int`; 
TRUNCATE TABLE `catalog_product_link_attribute_varchar`; 
TRUNCATE TABLE `catalog_product_link_type`; 
TRUNCATE TABLE `catalog_product_option`; 
TRUNCATE TABLE `catalog_product_option_price`; 
TRUNCATE TABLE `catalog_product_option_title`; 
TRUNCATE TABLE `catalog_product_option_type_price`; 
TRUNCATE TABLE `catalog_product_option_type_title`; 
TRUNCATE TABLE `catalog_product_option_type_value`; 
TRUNCATE TABLE `catalog_product_super_attribute`; 
TRUNCATE TABLE `catalog_product_super_attribute_label`; 
TRUNCATE TABLE `catalog_product_super_attribute_pricing`; 
TRUNCATE TABLE `catalog_product_super_link`; 
TRUNCATE TABLE `catalog_product_enabled_index`; 
TRUNCATE TABLE `catalog_product_website`; 
TRUNCATE TABLE `catalog_product_entity`; 
TRUNCATE TABLE `cataloginventory_stock`; 
TRUNCATE TABLE `cataloginventory_stock_item`; 
TRUNCATE TABLE `cataloginventory_stock_status`; 
TRUNCATE TABLE `catalog_product_link`; 
TRUNCATE TABLE `catalog_product_link_type`; 
TRUNCATE TABLE `catalog_product_option`; 
TRUNCATE TABLE `catalog_product_option_type_value`; 
TRUNCATE TABLE `catalog_product_super_attribute`; 
TRUNCATE TABLE `catalog_product_entity`; 
TRUNCATE TABLE `cataloginventory_stock`; 
TRUNCATE TABLE `catalog_category_product`; 
DELETE FROM catalog_product_flat_1; 
DELETE FROM catalog_product_flat_10; 
DELETE FROM catalog_product_flat_11; 
DELETE FROM catalog_product_flat_12; 
DELETE FROM catalog_product_flat_13; 
DELETE FROM catalog_product_flat_14; 
DELETE FROM catalog_product_flat_15; 
DELETE FROM catalog_product_flat_16; 
DELETE FROM catalog_product_flat_17; 
DELETE FROM catalog_product_flat_18; 
DELETE FROM catalog_product_flat_19; 
DELETE FROM catalog_product_flat_2; 
DELETE FROM catalog_product_flat_20; 
DELETE FROM catalog_product_flat_21; 
DELETE FROM catalog_product_flat_22; 
DELETE FROM catalog_product_flat_23; 
DELETE FROM catalog_product_flat_24; 
DELETE FROM catalog_product_flat_25; 
DELETE FROM catalog_product_flat_26; 
DELETE FROM catalog_product_flat_27; 
DELETE FROM catalog_product_flat_28; 
DELETE FROM catalog_product_flat_29; 
DELETE FROM catalog_product_flat_3; 
DELETE FROM catalog_product_flat_30; 
DELETE FROM catalog_product_flat_31; 
DELETE FROM catalog_product_flat_32; 
DELETE FROM catalog_product_flat_33; 
DELETE FROM catalog_product_flat_34; 
DELETE FROM catalog_product_flat_35; 
DELETE FROM catalog_product_flat_36; 
DELETE FROM catalog_product_flat_37; 
DELETE FROM catalog_product_flat_4; 
DELETE FROM catalog_product_flat_5; 
DELETE FROM catalog_product_flat_6; 
DELETE FROM catalog_product_flat_7; 
DELETE FROM catalog_product_flat_8; 
DELETE FROM catalog_product_flat_9; 
SET FOREIGN_KEY_CHECKS = 1; 

insert into `catalog_product_link_type`(`link_type_id`,`code`) values (1,'relation'),(2,'bundle'),(3,'super'),(4,'up_sell'),(5,'cross_sell'); 
insert into `catalog_product_link_attribute`(`product_link_attribute_id`,`link_type_id`,`product_link_attribute_code`,`data_type`) values (1,2,'qty','decimal'),(2,1,'position','int'),(3,4,'position','int'),(4,5,'position','int'),(6,1,'qty','decimal'),(7,3,'position','int'),(8,3,'qty','decimal'); 
insert into `cataloginventory_stock`(`stock_id`,`stock_name`) values (1,'Default'); 

आपको उपर्युक्त क्वेरी चलाने के बाद अपने सभी इंडेक्स को पुन: अनुक्रमणित करने की आवश्यकता हो सकती है।

System > Index Management > Reindex all

http://ka.lpe.sh/2012/08/09/magento-how-to-delete-remove-all-products-from-all-categories/

मज़ा!

+0

thnx बहुत @Kalpesh मेहता यह लगभग पूर्ण काम किया के बाद त्रुटि हर timewhen मैं सूचकांक "catalog_product_price" पुन: अनुक्रमणिका करने की कोशिश की हो गई। इसने उत्पादों को साफ किया, लेकिन, कैटलॉग> श्रेणियां प्रबंधित करें - श्रेणी के नामों में अभी भी उत्पादों की संख्या है, जैसे: डिफ़ॉल्ट श्रेणी (5) ... लेकिन किसी भी श्रेणी से जुड़े कोई उत्पाद –

+0

आपको पुनः करने की आवश्यकता हो सकती है -इंडेक्सिंग .. 'व्यवस्थापक> सिस्टम> इंडेक्स प्रबंधन' – Kalpesh

+0

यकीन है कि मैंने वास्तव में कई बार ऐसा किया था। और कैश सिस्टम को तब से अक्षम कर दिया गया है जब से मैंने शुरू किया ... मैंने आपके समाधान का परीक्षण केवल अपने स्थानीयहोस्ट में किया है, अभी तक ऑनलाइन नहीं ... –

0

तुम भी जोड़ने की जरूरत:

TRUNCATE TABLE catalog_product_entity; 

नहीं तो आप अखंडता बाधा त्रुटियों मिल जाएगा।

+0

यह अन्य प्रतिक्रिया में पहले से मौजूद है, इसे दो बार रखने की आवश्यकता नहीं – OSdave

0

कलपेश मेहता द्वारा दिए गए उत्तर निर्दोष रूप से काम करते हैं।

लेकिन आप सभी उत्पादों, नई prodcuts के आयात गुच्छा को हटा कर उसे व्यवस्थापक यूआई का उपयोग कर हटाने का प्रयास करने के बाद आप कर सकते थे इस तरह एक त्रुटि:

SQLSTATE [22003]: सीमा से बाहर संख्यात्मक मूल्य: 1690 BIGINT Magento deleting product BIGINT UNSIGNED value is out of range

यह पी: - अहस्ताक्षरित मूल्य '(।। magento_storeqitems_count 1)' में सीमा से बाहर है

तो, यह लेख मुझे बहुत मदद की एक SQL क्वेरी के साथ

DELETE FROM sales_flat_quote WHERE updated_at < DATE_SUB(Now(),INTERVAL 30 DAY); 
5

हटाएं उत्पादों Magento तरीका नहीं है और मैं इसे नहीं करने की सलाह देते: rovides कई विकल्प समस्या को हल करने और पहले एक मेरे मामले में काम किया। यह डेटाबेस भ्रष्टाचार या विदेशी कुंजी सूचकांक/बाधाओं के साथ समस्याएं पैदा कर सकता है as stated here

Magento में चीजों को बदलने के लिए सही, सुरक्षित और तेज़ तरीका का उपयोग करने में रुचि रखने वाले सभी को हमेशा Magento के ORM फ़ंक्शंस का उपयोग करना चाहिए।

इस मामले में यह एक php स्क्रिप्ट में होगा।

Mage::getModel('catalog/product')->getCollection()->delete(); 

Magento में यह एकमात्र सुरक्षित तरीका है।

+0

यह निश्चित रूप से स्वीकार्य उत्तर होना चाहिए। –

1

आप डायरेक्ट एसक्यूएल का उपयोग कर सभी उत्पाद हटा सकते हैं।

कृपया अपना डेटाबेस बैकअप लें, और निम्न एसक्यूएल प्रश्नों को चलाएं।

सभी उत्पाद तालिकाओं को रीसेट करें। सावधान रहें, स्क्रिप्ट के नीचे आपके सभी उत्पाद डेटा को हटा देगा, इसलिए इसे सावधानी से करें।

`SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE TABLE `catalog_product_bundle_option`; 
TRUNCATE TABLE `catalog_product_bundle_option_value`; 
TRUNCATE TABLE `catalog_product_bundle_selection`; 
TRUNCATE TABLE `catalog_product_entity_datetime`; 
TRUNCATE TABLE `catalog_product_entity_decimal`; 
TRUNCATE TABLE `catalog_product_entity_gallery`; 
TRUNCATE TABLE `catalog_product_entity_int`; 
TRUNCATE TABLE `catalog_product_entity_media_gallery`; 
TRUNCATE TABLE `catalog_product_entity_media_gallery_value`; 
TRUNCATE TABLE `catalog_product_entity_text`; 
TRUNCATE TABLE `catalog_product_entity_tier_price`; 
TRUNCATE TABLE `catalog_product_entity_varchar`; 
TRUNCATE TABLE `catalog_product_link`; 
TRUNCATE TABLE `catalog_product_link_attribute`; 
TRUNCATE TABLE `catalog_product_link_attribute_decimal`; 
TRUNCATE TABLE `catalog_product_link_attribute_int`; 
TRUNCATE TABLE `catalog_product_link_attribute_varchar`; 
TRUNCATE TABLE `catalog_product_link_type`; 
TRUNCATE TABLE `catalog_product_option`; 
TRUNCATE TABLE `catalog_product_option_price`; 
TRUNCATE TABLE `catalog_product_option_title`; 
TRUNCATE TABLE `catalog_product_option_type_price`; 
TRUNCATE TABLE `catalog_product_option_type_title`; 
TRUNCATE TABLE `catalog_product_option_type_value`; 
TRUNCATE TABLE `catalog_product_super_attribute`; 
TRUNCATE TABLE `catalog_product_super_attribute_label`; 
TRUNCATE TABLE `catalog_product_super_attribute_pricing`; 
TRUNCATE TABLE `catalog_product_super_link`; 
TRUNCATE TABLE `catalog_product_enabled_index`; 
TRUNCATE TABLE `catalog_product_website`; 
TRUNCATE TABLE `catalog_product_entity`; 
TRUNCATE TABLE `cataloginventory_stock`; 
TRUNCATE TABLE `cataloginventory_stock_item`; 
TRUNCATE TABLE `cataloginventory_stock_status`; 
INSERT INTO `catalog_product_link_type` VALUES(1, 'relation'); 
INSERT INTO `catalog_product_link_type` VALUES(3, 'super'); 
INSERT INTO `catalog_product_link_type` VALUES(4, 'up_sell'); 
INSERT INTO `catalog_product_link_type` VALUES(5, 'cross_sell'); 
INSERT INTO `catalog_product_link_attribute` VALUES(1, 1, 'position', 'int'); 
INSERT INTO `catalog_product_link_attribute` VALUES(2, 3, 'position', 'int'); 
INSERT INTO `catalog_product_link_attribute` VALUES(3, 3, 'qty', 'decimal'); 
INSERT INTO `catalog_product_link_attribute` VALUES(4, 4, 'position', 'int'); 
INSERT INTO `catalog_product_link_attribute` VALUES(5, 5, 'position', 'int'); 
INSERT INTO `cataloginventory_stock` VALUES(1, 'Default'); 
SET FOREIGN_KEY_CHECKS = 1;` 

**Remove the Product counts from category at back-end** 

`SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE TABLE `catalog_category_product`; 
TRUNCATE TABLE `catalog_category_product_index`; 
SET FOREIGN_KEY_CHECKS = 1;` 


**Remove the Bestseller and Most view Products at Dashboards** 

`SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE TABLE `report_compared_product_index`; 
TRUNCATE TABLE `report_viewed_product_aggregated_daily`; 
TRUNCATE TABLE `report_viewed_product_aggregated_monthly`; 
TRUNCATE TABLE `report_viewed_product_aggregated_yearly`; 
TRUNCATE TABLE `report_viewed_product_index`; 
TRUNCATE TABLE `sales_bestsellers_aggregated_daily`; 
TRUNCATE TABLE `sales_bestsellers_aggregated_monthly`; 
TRUNCATE TABLE `sales_bestsellers_aggregated_yearly`; 
SET FOREIGN_KEY_CHECKS = 1;` 

**Flush all the flat table of products** 

`SET FOREIGN_KEY_CHECKS = 0; 
DELETE FROM catalog_product_flat_1; 
DELETE FROM catalog_product_flat_2; 
DELETE FROM catalog_product_flat_3; 
DELETE FROM catalog_product_flat_4; 
DELETE FROM catalog_product_flat_5; 
SET FOREIGN_KEY_CHECKS = 1;` 

**Remove the review and rating of products** 

`SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE table `rating_option_vote`; 
TRUNCATE table `rating_option_vote_aggregated`; 
TRUNCATE table `review`; 
TRUNCATE table `review_detail`; 
TRUNCATE table `review_entity_summary`; 
TRUNCATE table `review_store`; 
SET FOREIGN_KEY_CHECKS = 1;` 

**For enterprise flush the following tables** 

`SET FOREIGN_KEY_CHECKS = 0; 
TRUNCATE TABLE `catalog_category_flat_cl`; 
TRUNCATE TABLE `catalog_category_product_cat_cl`; 
TRUNCATE TABLE `catalog_category_product_index_cl`; 
TRUNCATE TABLE `catalog_product_flat_cl`; 
TRUNCATE TABLE `catalog_product_index_price_cl`; 
TRUNCATE TABLE `cataloginventory_stock_status_cl`; 
TRUNCATE TABLE `catalogsearch_fulltext_cl`; 
SET FOREIGN_KEY_CHECKS = 1;` 
0

अपने एसक्यूएल-SQL स्क्रिप्ट के साथ मैं अपने मूल्य सूचकांक तोड़ दिया। ऐसा इसलिए होता है क्योंकि हम दुकान में समूह की कीमतों का उपयोग करते हैं।

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails  (`db`.`catalog_product_index_group_price`, CONSTRAINT `FK_CAT_PRD_IDX_GROUP_PRICE_ENTT_ID_CAT_PRD_ENTT_ENTT_ID` FOREIGN KEY (`entity_id`) REFERENCES `catalog_product_entity` (`entity_id`), query was: INSERT INTO `catalog_product_index_group_price` SELECT `gp`.`entity_id`, `cg`.`customer_group_id`, `cw`.`website_id`, MIN(IF(gp.website_id = 0, ROUND(gp.value * cwd.rate, 4), gp.value)) FROM `catalog_product_entity_group_price` AS `gp` 
INNER JOIN `customer_group` AS `cg` ON gp.all_groups = 1 OR (gp.all_groups = 0 AND gp.customer_group_id = cg.customer_group_id) 
INNER JOIN `core_website` AS `cw` ON gp.website_id = 0 OR gp.website_id = cw.website_id 
INNER JOIN `catalog_product_index_website` AS `cwd` ON cw.website_id = cwd.website_id WHERE (cw.website_id != 0) GROUP BY `gp`.`entity_id`, 
     `cg`.`customer_group_id`, 
     `cw`.`website_id` ON DUPLICATE KEY UPDATE `price` = VALUES(`price`) 

कृपया लाइन निम्नलिखित जोड़ें::

TRUNCATE TABLE `catalog_product_entity_group_price`; 

 संबंधित मुद्दे