Mysql
 sql >> Base de données >  >> RDS >> Mysql

Déclarer et utiliser les variables MySQL varchar

J'ai rencontré le même problème en utilisant MySQL Workbench. Selon la documentation MySQL , le DECLARE "instruction déclare des variables locales dans les programmes stockés." Cela signifie apparemment qu'il est uniquement garanti de fonctionner avec des procédures/fonctions stockées.

La solution pour moi était simplement de supprimer le DECLARE et introduisez la variable dans le SET déclaration. Pour votre code, cela signifierait :

-- DECLARE FOO varchar(7); 
-- DECLARE oldFOO varchar(7);

-- the @ symbol is required
SET @FOO = '138'; 
SET @oldFOO = CONCAT('0', FOO);

UPDATE mypermits SET person = FOO WHERE person = oldFOO;