Mysql database table cursor
Better is to avoid cursors.  Remember that SQL loves to do things in bulk, but hates to work with Cursors.

UPDATE  psdms_feature_value_lang t1
    JOIN  ordernumbers AS o  ON ...
    LEFT JOIN  psdms_feature_product t2
          ON t1.id_feature_value = t2.id_feature_value SET
    value  ='95090€'
    WHERE  t2.id_product = 1
      AND  t2.id_feature = 510
      AND  o.id_product
      AND  o.id_feature = 510;
INSERT
     INTO  psdms_feature_value ( id_feature ) 
SELECT  510
    FROM  ordernumbers
    WHERE  o.id_product
      AND  o.id_feature = 510;
INSERT
     INTO  psdms_feature_product ( id_feature, id_product, id_feature_value) 
SELECT  o.id_feature , o.id_product , o.id_feature_value
    FROM  ordernumbers
    WHERE  o.id_product
      AND  o.id_feature = 510;


Index:

ordernumbers: INDEX(id_feature, id_product, id_feature_value)


Other notes:

== is not proper syntax

What do you mean by AND id_product?  It probably tests for non-zero.