Maison  >  Questions et réponses  >  le corps du texte

mysql sélectionnez oùquestion

J'ai une question pour vous les seniors. Il y a un champ sfz dans le tableau. Le type de caractère a une longueur fixe de 18 bits. J'utilise un curseur pour attribuer ce champ à une variable vsfz dans le processus de stockage. . Il a également un type de caractère de longueur fixe de 18 bits, J'ai écrit une instruction de requête : select bj from kq201905 où sfz=vsfz;, qui peut être interrogée correctement. Parce que je souhaite interroger plusieurs tables, les noms de tables doivent être attribués à l'aide de boucles de variables. J'utilise donc des instructions de préparation pour les assembler,

set @vsk=concat('select bj from ',vkn', où sfz= ',vsfz,';' );

prepare stmt from @vsk;

execute stmt;

deallocate prepare stmt;

Après l'exécution, le résultat de la requête s'est avéré erroné. J'ai testé que cela n'avait rien à voir avec la variable du nom de la table, et maintenant je soupçonne qu'il s'agit d'un problème avec la clause Where. Si quelqu'un connaît la raison, dites-le-moi, merci !

享耳享耳1958 Il y a quelques jours1268

répondre à tous(0)je répondrai

Pas de réponse
  • Annulerrépondre