Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Prozedur? mit mehreren SELECT INTO und UPDATE SQL

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von spgo2012, 29 März 2012.

  1. spgo2012

    spgo2012 Neuer Benutzer

    Hi zusammen,

    ich möchte ein Skript schreiben, welches mehrere SELECT INTO und UPDATE SQL zusammenfasst.
    Das Ziel ist quasi mehrere Daten innerhalb einer Tabelle regelmäßig anzureichern bzw. zu aktualisieren. Die Quelldaten stammen aus einer externen Datenbank welche per Link angebunden ist. Teils werden diese nochmals summiert und gruppiert oder verkettet oder auch direkt durchgeschleift (abhängig von der jeweiligen Spalte).

    Der Ablauf wäre in etwa wie folgt:

    Erster Schritt:
    SELECT x,y
    INTO #tab_temp
    FROM externe_Tabellen

    UPDATE tab1
    SET ....
    FROM tab1 INNER JOIN #tab_temp

    Zweiter Schritt:
    SELECT x,y
    INTO #tab_temp_Bereich_A
    FROM externe_Tabellen

    SELECT x,y
    INTO #tab_temp_BereichA_2
    FROM #tab_temp_BereichA

    UPDATE tab1
    SET ....
    FROM tab1 INNER JOIN #tab_temp_BereichA_2

    Dritter Schritt:
    SELECT x,y
    INTO #tab_temp_Bereich_B
    FROM externe_Tabellen

    SELECT x,y
    INTO #tab_temp_BereichB_2
    FROM #tab_temp_BereichB

    UPDATE tab1
    SET ....
    FROM tab1 INNER JOIN #tab_temp_BereichB_2


    Nun meine Fragen:
    Geht das generell in der Form zusammengefasst in einem Skript als Prozedur? Oder kann ich keine SELECT INTO in einer Prozedur verwenden?
    Oder gibt es vielleicht einen eleganteren Ansatz?

    Vielen Dank im Voraus :)
     
  2. ukulele

    ukulele Datenbank-Guru

    Also mit Stored Procedures würde es nicht gehen weil sie zum einen (glaube ich) keine Daten schreiben können, nur zurück geben, und zum Andern weil du sie ja auch aufrufen musst. Eigentlich ist es auch unnötig, du musst nur einen Weg finden SQL Code zeitgesteuert ausführen zu lassen.

    Ich stand auch schon vor der Aufgabe, leider bin noch nicht so weit das die Daten Importiert werden könnten.

    Es gibt auch Tools dafür: MS SQL 2005 bietet DTS, das kann soetwas automatisieren, läuft aber nicht (autmatisiert) in der Express Edition. Welche SQL Version hast du denn?
     
  3. spgo2012

    spgo2012 Neuer Benutzer

    Microsoft SQL Server Management Studio 10.50.1600.1 für MS-SQL Server 2008 R2
    Das Tool ist aber auch die kostentlose Variante. Server sollte kostenpflichtig sein.
     
  4. spgo2012

    spgo2012 Neuer Benutzer

    Ich glaube ich habe die Lösung gefunden:

    SELECT
    INTO
    ...;
    GO

    usw.

    Vielen Dank ukulele für den Tipp, dass ich die Prozeduren gar nicht brauche, somit konnte ich mir relativ einfach eine "Batch"-Skript erstellen.
     
  5. ukulele

    ukulele Datenbank-Guru

    Klar manuell gehts immer...
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden