20. July 2010 · Comments Off · Categories: Datenbanken · Tags: ,

Leider ist es nicht möglich, einen mit SQL Server 2008 erstellten Datenbank-Dump in eine SQL Server 2005-Datenbank einzuspielen. Umgekehrt besteht ebensowenig die Möglichkeit, aus einer 2008er-Datenbank einen 2005er-Dump zu erzeugen. Daher ist es in diesem Fall notwendig, einen kleinen Umweg zu gehen.

SQL Server 2008 Export

Mit dem Skript-Assistenten (Im Kontextmenü einer Datenbank des SQL Server Management Studios unter “Tasks” den Befehl “Generate Scripts…” ausführen) kann ein SQL-Skript generiert werden, dass sowohl das Schema als auch die Daten berücksichtigt. Im zweiten Schritt des Assistenten gilt es, die Datenbank auszuwählen, für die man das Skript erstellen möchte. Unterhalb der Auswahlliste muss das Häkchen vor “Script all objects in the selceted database” gesetzt sein, damit die gesamte Datenbank exportiert wird. Im nächsten Schritt setzt man den Eintrag “Script for Server Version 2008″ von “SQL Server 2008″ auf “SQL Server 2005″ und “Script Data” auf “True”. Möchte man die Datenbank-Instanz auf dem SQL Server 2005 ebenfalls durch das Skript erstellen lassen, dann muss man auch “Script Database Create” auf “True” setzen. Nun kann man den Assistenten mit “Finish” beenden.

SQL Server 2005 Import

Bei größeren Datenbanken wird das Ausführen des im vorangehenden Abschnitts generierten Scripts im Microsoft SQL Server Management Studios aus Speicherplatzgründen fehlschlagen. Aus diesem Grund ist der Einsatz des sqlcmd-Befehls erforderlich (via Eingabeaufforderung), mit dem auch größere Script ausgeführt werden können.

sqlcmd -s ServerNameDatenbankName
       -q D:...ScriptDatei.sql -o D:...LogDatei.log

Der Importvorgang kann nun einige Minuten in Anspruch nehmen.

Links

Möchte man eine Microsoft Excel 2007-Tabelle in eine Datenbank-Tabelle des SQL Server 2005 einlesen, der von Haus aus keinen Excel 2007-Import unterstützt, so gibt es zwei einfache Möglichkeiten, diesen Import mit Hilfe von Microsoft Office 2007 dennoch realisieren zu können.

Lösung 1

Der erste Weg führt über das Excel 2003-Format, das der SQL Server 2005 standardmäßig kennt. Man speichert die 2007er-Excel-Tabelle in eine 2003er-Excel-Tabelle (genauer: Excel 97-2003-Arbeitsmappe (*.xls)) und führt im SQL Server den Import über das Kontextmenü einer bereits vorhandenen Datenbank durch (via Tasks und Daten importieren…). Im anschließenden Dialog (SQL Server-Import/Export-Assistent) wählt man dann als Datenquelle “Microsoft Excel” und gibt weiter unten die soeben erstellte 2003er-Excel-Datei (Endung: xls) an.

Etwas komplizierter wird die Geschichte allerdings dann, wenn die ursprüngliche 2007er-Excel-Tabelle z.B. mehr als 65.563 Zeilen aufweist, da hier die Grenze von Excel 2003 liegt (mit Excel 2007 können dagegen schon bis zu 1.048.576 Zeilen in einer Tabelle gespeichert werden). In einem solchen Fall würde es helfen, die 2007er-Tabelle in mehrere 2003er-Tabellen zu zerlegen und anschließend nacheinander in den SQL Server 2005 zu importieren. Allerdings ist diese Lösung zugegebenermaßen dann doch etwas umständlich. Das Microsoft Office-Paket hält hierfür aber noch einen weiteren Lösungsweg bereit, der nachfolgend kurz erläutert wird.

Lösung 2

Der zweite Lösungsweg führt über Microsoft Access 2007. Zuerst öffnet man die gesamte 2007er-Excel-Tabelle in Access 2007 (einfach über Datei und Öffnen…). Anschließend speichert man die 2007er-Access-Datenbank als 2003er-Access-Datenbank. Diese Datenbank kann dann – wie oben bereits für Excel 2003 beschrieben – (d.h. via Tasks und Daten importieren…) einfach im SQL Server 2005 importiert werden.

16. January 2009 · Comments Off · Categories: Datenbanken

Auch Microsoft bietet eine kostenfreie Version der hauseigenen Datenbankplattform Microsoft SQL Server an. Diese als Express bezeichneten Versionen können von der Microsoft-Website direkt heruntergeladen werden. Die Links dazu lauten:

Dabei darf das Datenbank-Tool Microsoft SQL Server Management Studio natürlich nicht fehlen. Es wird ebenfalls auf der Microsoft-Webseite zum Download bereitgestellt:

Weitere Links zu diesem Thema:

15. January 2009 · Comments Off · Categories: Datenbanken

Oracle bietet seine Datenbank auch in der Form einer kostenlosen Express Edition an, die unter dem folgenden Link heruntergeladen werden kann:

Als unterstützendes Datenbank-Tool erhält man von Oracle den Oracle SQL Developer:

Weitere Links zu diesem Thema: