Anbei meine jetzige Vorgehensweise, bitte beachten, ich übernehme "NULL" Garantie und habe selbst bisher nur an der Testdatenbank gearbeitet.
Das ganze ist Teil eines Python Skriptes mit welche ich nun Artikel aus meiner Warenwirtschaft Tryton in den Webshop lade.
Über Ergänzungen und Anregungen zu dem Thema freue ich mich sehr!
1. Werte zu
products hinzufügen:
"INSERT INTO products "
"( products_status, products_date_added, products_model, products_image, products_shippingtime, products_startpage , products_price, products_tax_class_id, products_quantity, products_ean, products_weight, manufacturers_id, product_template, options_template ) "
"VALUES ( '{products_status}', '{products_date_added}', '{products_model}', '{products_image}', '{products_shippingtime}', '{products_startpage }', '{products_price}', '{products_tax_class_id}', '{products_quantity}', '{products_ean}', '{products_weight}', '{manufacturers_id}', '{product_template}', '{options_template}' )"
2.
ID des neuen Produktes wählen
"SELECT LAST_INSERT_ID()"
3. Beschreibung zu
products_description hinzufügen
"INSERT INTO products_description "
"( products_id, products_name, products_description, language_id) "
"VALUES ( '{last_insert_id}', '{products_name}', '{products_description}', '{language_id}' )"
4. Für jede Kategorie, prüfen ob diese in
categories_description existiert und
ID notieren
"SELECT * FROM categories_description "
"WHERE `language_id` = '2' AND `categories_name` = '{0}'"
4.1 Wenn sie nicht existiert anlegen und
ID notieren:
"INSERT INTO categories (date_added, last_modified) VALUE '{0}', '{0}'"
"SELECT LAST_INSERT_ID()"
4.2 Für jede Sprache eine Beschreibung zu
categories_description hinzufügen:
"INSERT INTO categories_description "
"( categories_id, language_id, categories_name ) "
"VALUE '{0}', '{1}', '{2}'"
5. Produkt und Kategorie verknüpfen in
products_to_categories:
"INSERT INTO `products_to_categories` "
"(products_id, categories_id) "
"VALUES ( '{last_insert_id}', '{categories_id}' )"
6. Bilder hochladen und dann in
products_images eintragen (nicht das 1. Bild):
"INSERT INTO `products_images` "
"(products_id, image_nr, image_name) "
"VALUES ( '{last_insert_id}', '{image_nr}', '{image_name}' )"