0
votes

Dans la procédure stockée omniprésente, comment puis-je laisser tomber une table et la recréer à l'aide d'une variable

Ceci fonctionne Si j'utilise un nom de table réelle plutôt que le nom de la variable (: TNAME) dans les deux instructions.

CREATE PROCEDURE Make_Snap(in :TName VARCHAR(20));

BEGIN

   DROP TABLE IF EXISTS :TName;
   select * into :TName from Inventory_mstr;
END;


3 Réponses :


0
votes

Réponse courte est que votre syntaxe est incorrecte. Omniprésente ne prend pas en charge le s'il existe de cette manière.
Vous utiliserez quelque chose comme: xxx

question précédemment posée


0 commentaires

0
votes

C'est ce que j'ai enfin obligé de travailler: xxx


0 commentaires

0
votes

Voici un autre exemple qui est censé fonctionner, même si je ne l'ai pas encore testé:

CREATE PROCEDURE Make_Snap(in :TName VARCHAR(20));
BEGIN
    Exec('DROP Table IF EXISTS "' + :TName + '"') ; 
    Exec('select * into "' +:TName + '" from Inventory_Mstr'); 
End


0 commentaires