Announcement

Collapse
No announcement yet.

SQL abfrage

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • SQL abfrage

    Hi

    ich hoffe ich schreibe das hier ins richtige Forum


    Also ich suche etwas, weiß aber nicht wie es ich es nennen soll deswegen erkläre ich es mal.


    Ich habe eine gespeicherte prozedur(A) und wenn diese abgefragt wird möchte ich in dieser prozedur eine weitere prozedur(B) abfragen allerdings möchte ich nicht das die erste prozedur(A) auf ein ergebniss wartet sondern gleich beendet wird


    weiß irgendwer wie sowas geht? danke im vorraus

  • #2
    Kannst du das noch etwas näher beschreiben und vor allem, warum Prozedur_A sich sofort beenden soll? Wenn dann Prozedur_B weiterläuft, dann weiß diese nämlich nicht, an wen sie das Ergebnis liefern soll. Oder sollte damit nur eine Hintergrundverarbeitung ausgelöst werden, die sowieso kein Ergebnis liefert, dann könnte man das zB über eine Zwischentabelle machen, in die Prozedur_A ein Flag reinschreibt, der SQL-Server-Agent sieht in Minuten-Abständen nach, ob ein Eintrag vorhanden ist und wenn ja, dann verearbeitet er diesen. Damit wäre eine komplette Trennung gegeben.

    bye,
    Helmut

    Comment


    • #3
      Hallo Alysia,

      den Begriff den Du suchst ist "asynchrones Ausführen".
      Auf direktem Weg ist das nicht möglich, da das der Transaktionalität von SQL widersprechen würde.

      Geht nur mit Umwegen, so wie es z.B. Helmut beschrieben hat.

      Olaf
      Olaf Helper

      <Blog> <Xing>
      * cogito ergo sum * errare humanum est * quote erat demonstrandum *
      Wenn ich denke, ist das ein Fehler und das beweise ich täglich

      Comment


      • #4
        Hi,

        Du kannst in der Prozedur A mit EXEC <prozedurB> diese starten.
        Das ist aber dann synchron, heisst er wartet auf das Ergebnis.
        Mit ist ein "asynchron" da nicht bekannt.

        Du kannst aber das mit einem Trick erreichen.
        Prozedur A updated ein USN Feld (Counter) in einer Hilftabelle. Auf der liegt ein Trigger, der Trigger macht das EXEC <prozedurB>
        Freundliche Grüße
        Yves Rausch

        Comment


        • #5
          Auch Trigger laufen synchron ab, dh. das Update von Prozedur A warten ebenfalls, bis der Trigger fertig ist, da der ja ein Rollback auslösen könnte => Transaktionalität

          Olaf
          Olaf Helper

          <Blog> <Xing>
          * cogito ergo sum * errare humanum est * quote erat demonstrandum *
          Wenn ich denke, ist das ein Fehler und das beweise ich täglich

          Comment

          Working...
          X