Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Django Call Stored Procedure in zweiter Datenbank

Dies sind die folgenden Schritte, die ich unternommen habe:

  1. Die Ergebnisse meiner gespeicherten Prozedur wurden in eine temporäre Tabelle gespeichert, um die Ergebnismenge auf eine einzige Ergebnismenge zu reduzieren. Dadurch wurde multi=True überflüssig
  2. Außerdem habe ich dafür gesorgt, dass der Benutzer an meiner IP-Adresse Zugriff hatte, um gespeicherte Prozeduren in der Datenbank selbst aufzurufen.
  3. Schließlich habe ich die callproc weiter erforscht Funktion. Irgendwann schlug jemand auf einer anderen Seite den folgenden Code vor, der funktionierte:

    cur = connections["SomeDB"].cursor()
    cur.callproc("spGetLocationPath", [id, someval])
    res = next(cur.stored_results()).fetchall()
    cur.close()