Permettre l'exécution de plusieurs instructions pendant l'exécution via sqlalchemy

J'ai un DDL objet (create_function_foo) qui contient une instruction create function. En première ligne de j'y ai mis DROP FUNCTION IF EXISTS foo; mais engine.execute(create_function_foo) retourne:

sqlalchemy.exc.InterfaceError: (InterfaceError) Use multi=True when executing multiple statements

J'ai mis multi=True en tant que paramètre pour create_engine, engine.execute_options et engine.execute mais ça ne fonctionne pas.

NOTE: engine si mon exemple de create_engine

NOTE: je suis à l'aide de python 3.2 + mysql.connecteur 1.0.12 + sqlalchemy 0.8.2

create_function_foo = DDL("""\
DROP FUNCTION IF EXISTS foo;
CREATE FUNCTION `foo`(
    SID INT
) RETURNS double
READS SQL DATA
BEGIN
  ...
END
""")

Où je dois le mettre?

InformationsquelleAutor Farhadix | 2013-11-05