La requête:Quelle est la dangerosité de cette requête SQL?
UPDATE
node as n
right join content_type_product as c
on n.nid = c.nid
right join uc_products as p
on p.nid = n.nid
set
c.field_product_price_eur_value = p.sell_price * 0.0961,
c.field_product_price_zar_value = p.sell_price * 1,
c.field_product_price_gbp_value = p.sell_price * 0.0844,
c.field_product_price_usd_value = p.sell_price * 0.1305,
n.changed = now()
where n.type = 'product'
Pour ceux qui n'ont pas pensé à elle, cette requête met à jour tous les noeuds sur un site Drupal à tous la dernière monnaie. Ma question est, est-elle dangereuse cette requête si vous avez:
- 500 nœuds
- 50 000 nœuds
- 1 000 000 nœuds
Si cette commande est exécutée toutes les heures?
Je dois savoir si je dois seulement exécuter cette requête toutes les quelques heures, ou si je dois limiter la mise à jour seulement dire 500 à la fois, etc.
Le site où il sera exécuté aura plusieurs noeuds entrées et cette requête a mis à jour 2 lignes pour chaque 1 produit. Donc, je ne suis pas sûr à quel point cela va fatiguer le serveur, si j'ai des tonnes de nœuds.
Quel est votre SGBDR? – Lucero
La question qui vient immédiatement à l'esprit est ce qui se passe si elle est interrompue ... –
Base de données = MySQL (je cours Drupal) Et si elle est interrompue, ce n'est pas la fin du monde, car il fonctionne toutes les heures . La question est, va-t-il tuer le serveur (c'est-à-dire utiliser trop de traitement) s'il y a 1 000 000 de nœuds)? Gardez à l'esprit qu'il s'agit de mettre à jour les produits et que le site pourrait avoir beaucoup, beaucoup de produits. – coderama