karsten76: Wann lohnen sich stored procedures? (PostgreSQL)

Beitrag lesen

Hallo,

Ich denke 'Parsen' und 'Kompilieren' schliesst auch die Datenbanksprache SQL ein!

das kann ja in vielen bereichen schon gar nicht gehen, alleine weil man dort dynamisches sql einsetzen kann, sprich SQL, dass erst zur laufzeit gebildet wird. wie soll ich das den vorher parsen ???

Das DBMS parst und analysiert den Code der SP, darunter auch SQL-Commands. Um Daten zu übergeben werden Parameter genutzt. Das hat erstens den Vorteil, dass der SQL-String ebenfalls kompiliert werden kann und zweitens wird so SQL-Injection ausgeschlossen.
Es wäre unsinnig innerhalb der SP einen einzelnen Query-String zusammenzusetzen (der natürlich nicht vorher geparst und kompiliert werden könnte), da somit diese Vorteile der SP zunichte gemacht würden.

http://www.oracle.com/technology/tech/pl_sql/pdf/doing_sql_from_plsql.pdf

ab Ende Seite 6, Anfang seite 7 wird es interessant:

"Then, at run time, appropriate calls are made to parse, bind, and execute the
regular SQL statement."

Zu Oraclespezifischen Dingen kann ich nicht viel sagen. Für mich klingt PL/SQL aber nach einer internen Programmiersprache des Oracle-DBMS, die mit SQL nur insofern zu tun hat als sie SQL-Querystrings ausführen kann? Den zitierten Ausschnitt würde ich nicht auf SP's beziehen wollen?

MfG

0 59

Wann lohnen sich stored procedures? (PostgreSQL)

phil
  • datenbank
  1. 0
    Ilja
    1. 0
      Zizi
      1. 0
        Ilja
        1. 0
          phil
          1. 0
            phil
          2. 0
            Ilja
            1. 0
              phil
              1. 0
                phil
                1. 0
                  Ilja
  2. 0
    Zizi
    1. 0
      phil
      1. 0
        Vinzenz Mai
        1. 0
          phil
          1. 0
            Ilja
            1. 0
              phil
          2. 0
            Vinzenz Mai
      2. 0
        Zizi
  3. 0
    Vinzenz Mai
    1. 0
      phil
  4. 0
    hotti
    1. 0
      phil
      1. 0
        hotti
  5. 0
    karsten76
    1. 0
      phil
      1. 0
        karsten76
        1. 0
          Ilja
          1. 0
            karsten76
            1. 0
              Philipp Zentner
            2. 0
              Ilja
              1. 0
                karsten76
                1. 0
                  Ilja
                  1. 0
                    Vinzenz Mai
                    1. 0
                      Ilja
                      1. 0
                        Vinzenz Mai
                        1. 0
                          Ilja
                          1. 0
                            frank123
                            1. 0
                              Ilja
                        2. 0
                          Philipp Zentner
                          1. 0
                            Ilja
                    2. 0
                      karsten76
                      1. 0
                        Vinzenz Mai
                        1. 0
                          karsten76
                          1. 0
                            Ilja
                            1. 0
                              karsten76
                              1. 0
                                Ilja
                                1. 0
                                  karsten76
                                  1. 0
                                    Ilja
                                    1. 0
                                      karsten76
                                      1. 0
                                        Ilja
                  2. 0
                    karsten76
                    1. 0
                      Ilja
                      1. 0
                        karsten76
                        1. 0
                          karsten76
                          1. 0
                            Ilja
                            1. 0
                              karsten76
                              1. 0
                                Ilja
      2. 0
        Vinzenz Mai
      3. 0
        Ilja