Bonjour,
Au sein d'un trigger, j'effectue un cast d'un text vers un integer. Mon problème est que quand j'effectue la requête manuellement, le casting passe très bien.
Mon last data est un varchar(50) et contient : "253487";
Ce code fonctionne à merveille
Celui-ci(qui est à l'intérieur d'un trigger) ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT text from product_attribute where attribute_id = CAST(last_data AS UNSIGNED ) and product_id =1 ;
et voici dans le log mysql, ce que ça dit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part SELECT text as a into vattr_name from product_attribute where attribute_id = CAST(last_data AS UNSIGNED) and product_id = new.product_id ;
et ça donne une série de null, si je vous montre via un printscreen
Code : Sélectionner tout - Visualiser dans une fenêtre à part 3372 Query SELECT texte as a into vattr_name from product_attribute where attribute_id = CAST( NAME_CONST('last_data',_ u c s 2'\02\05\03\04\08\07' C O L L A T E ' u c s 2 _ g e n e r a l _ c i') AS UNSIGNED) and product_id = new.product_id
Comment se fait-il que manuellement ça fonctionne, et que dans le log l'erreur est bien là, le cast ne passe pas et plante?![]()
Problème d'encodage? j'ai essayé tout ce qui me passait par la tête mais rien n'y fait
Milles remerciements à quiconque peut me donner une piste pour trouver ce problème
benjamin122
Partager