Как скомпилировать файл SQL с несколькими операторами в Oracle 12c, используя Python 3.5 - PullRequest
0 голосов
/ 24 октября 2018

Oracle 12cR1.Python 3.5

У меня есть ситуация, когда мне нужно скомпилировать Oracle 12c объекты с использованием файлов SQL через Python 3.5.Код Python выглядит следующим образом.

import cx_Oracle as ora
conn = ora.connect("myuser/mypwd@myservice")
cur = conn.cursor()
with open("/fodler1/folder2/pkh/mypkg.sql","r") as sqlFile:
    sql = sqlFile.read()
    cur.execute(sql)
with open("/fodler1/folder2/pkb/mypkg.sql","r") as sqlFile:
    sql = sqlFile.read()
    cur.execute(sql)
cur.close()
conn.close()

Если в конце файла SQL есть один символ /, я использую rstrip(), чтобы удалить его / и скомпилировать файл, так как Python не распознает /.

Проблема возникает, когда в файле SQL есть несколько операторов, каждый из которых завершается символом /.Скажите, после того, как пакет заканчивается / помещен.Опубликуйте это / заявление о предоставлении гранта снова с / в конце.Python не распознает / s и выдает ошибку.Есть ли способ обработки нескольких операторов в одном Oracle SQL с использованием Python?

...