1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

MSSQL Daten auslesen und in Tabelle speichern

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von Uelidetumm, 5 Oktober 2011.

  1. Uelidetumm

    Uelidetumm Neuer Benutzer

    Hallo zusammen

    Ich möchte gerne aus einer Datenbank etwas auslesen und diesen Output dann in eine andere Tabelle speichern. meine Frage: Wie funktioniert das?

    Aufgabe:

    Könnte so etwas funktionieren oder ist der Ansatz falsch?

    INSERT INTO auswertungDB (ReservedSpace, UsedSpace) VALUES ((SELECT DB_NAME(database_id) AS DatabaseName,
    Name AS Logical_Name,
    Physical_Name, (size*8)/1024 SizeMB
    FROM sys.master_files
    WHERE DB_NAME(database_id) = 'AdventureWorks'
    GO), EXEC sp_spaceused @updateusage = N'TRUE');

    GO

    Bitte um hilfe

    Lg Ueli
     
  2. Charly

    Charly Datenbank-Guru

    Hallo Ueli,

    eigentlich eher so:

    INSERT INTO Tabelle1 (Spalte1, Spalte2)
    SELECT Spalte1, Spalte2 FROM Tabelle2
    WHERE Spalte1 = 'Text'

    Beim Einfügen von Daten aus einer anderen Tabelle brauchst Du VALUES nicht angeben sondern nur die Spalten aus der Ursprungstabelle und halt eine Bedingung die die einzufügenden Spalten filtert (wenn nötig).

    Gruß Charly
     
    ukulele gefällt das.
  3. Uelidetumm

    Uelidetumm Neuer Benutzer

    Wow, vielen Dank für die rasche Antwort. Habe deinen sinnvollen Rat befolgt und siehe da: Es klappt.
    Ich muss in diese Tabelle Verwendeter Speicherplatz und Reservierter Speicherplatz (Daten und Logfiles) eingeben.
    Zusätzlich ist eine Unterscheidung zwischen Daten und Index gewünscht.

    Weist du vielleicht auch wie ich das hinkriege?

    Ich habe gerade gesehen, dass ich in sp_spaceused alles finde was ich brauche. Allerdings ist die Ausgabe folgendermassen:

    Befehl:
    USE AdventureWorks;
    GO
    EXEC sp_spaceused;
    GO

    Output

    database_name database_size uncallculated space
    AdventureWorks 172.00 MB 3.80 MB
    reserved data index_size unused
    17000000 KB 880000 KB 770000 KB 46000 KB

    Ich brauch aber nur den Inhalt von data, reserved und index_size.
    Kann man das irgendwie rausfiltern?

    Lg Ueli
     
Die Seite wird geladen...

Diese Seite empfehlen