2012-10-18 20 views
12

Sono abbastanza nuovo in mysql ma ho esperienza con MS SQL.mysql DICHIARARE MENTRE fuori procedura memorizzata come?

E 'possibile dichiarare le variabili e utilizzare mentre dichiarazione fuori stored procedure?

ho trovato solo esempi in cui ragazzi facendo in questo modo

1. procedure created 
2. execute proc 
3. drop proc 

mi Suggerisci la strada giusta

risposta

10

No, non puoi farlo. È possibile utilizzare queste istruzioni solo all'interno della clausola BEGIN ... END.

Quindi, è possibile in stored procedure/funzioni, trigger ed eventi.

Altre informazioni qui - MySQL Compound-Statement Syntax.

+0

Questo è ... un rompicapo se si sta tentando di trasferire un'app MS SQL su mysql (ad esempio). Per motivi di interesse, qual è l'approccio giusto quando si scrive uno script di migrazione ed è necessario impostare una variabile sull'output di una query e quindi eseguire qualcosa in modo condizionale (ad es. Se ho valore "foo", quindi inserire il valore "bar" e inserire il valore 'pantaloni') in un'altra tabella? – bounav

+0

Per rispondere al mio commento è possibile scrivere 'INSERIRE IN Tabella1 (ColA, ColB) SELECT ColC, ColD FROM Table2 WHERE ColE = 'foo';' quindi raggruppa queste query. – bounav

Problemi correlati