SQLAlchemy не выполняет запрос - PullRequest
0 голосов
/ 04 февраля 2020

У меня проблема с sqlAlchemy, когда я пытаюсь выполнить запрос. Мой скрипт работал нормально, и каждый query.execute работал хорошо до сих пор. Вот код:

for i in listaUnificacion:
        usu = "'AUTO'"
        incabuniper = "'S'"
        sCodPersonaPr, sPers = i[0], i[1]

        engine = sqla.create_engine(URL_ORACLE)
        connection = engine.connect()
        seq_query = sqla.Sequence('SEQ_PERUNI')
        pnCodSecPerUni = connection.execute(seq_query)

        query = "INSERT INTO TABLE1(SEC, CD, CDUNIF, DATE, USU, INCABUNIPER) VALUES({0}, {1}, {2}, SYSDATE, {3}, {4})".format(pnCodSecPerUni, sCodPersonaPr, sPers, str(usu), str(incabuniper))
        query = sqla.text(query)
        print(query)
        connection.execute(query)


        query = "UPDATE TABLE2 SET type = 'M' WHERE cd = {}".format(sPers);
        connection.execute(query)

        query_uni = "DECLARE\
                             res varchar2(100);\
                             errorm varchar2(1000);\
                         BEGIN\
                             res := USER.FNC({0},{1},{2},'AUTO',errorm);\
                         END;".format(pnCodSecPerUni, sCodPersonaPr, sPers)
        query_uni = sqla.text(query_unifica)
        connection.execute(query_uni)

    connection.close()

Когда я пытаюсь выполнить query_unifica, он не работает, но не выдает никакой ошибки. Я положил здесь исполнение с некоторыми принтами:

    PARES
    (11005202, 11002071)

    INSERT INTO TABLE1(SEC, CD, CDUNIF,, DATE, USU, INCABUNIPER) 
    VALUES(1628226, 11005202, 11002071, SYSDATE, 'AUTO', 'S') --> WORKS FINE

    UPDATE TABLE2 SET type = 'M' WHERE cd = 11002071 --> works fine

    DECLARE                             res varchar2(100);                             errorm 
    varchar2(1000);                         BEGIN                             res := 
    USER.FNC(1628226,11005202,11002071,'AUTO',errorm);                         END; -- 
   >  DOSEN'T WORK!!!
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...