C# Restore klappt nicht

Horst1945

Cadet 4th Year
Registriert
Okt. 2014
Beiträge
106
Hallöchen,

ich habe schon einige Schwierigkeiten mit Backup gehabt, aber das Backup klappt jetzt.

Nun bin ich fast fertige mit Restore, aber beim Testen taucht dieser Fehler auf:

Code:
 private void btnRestore_Click(object sender, EventArgs e)
        {
            try
            {
                conn = new SqlConnection(connectString);
                conn.Open();
                sql = "Alter Database " + cmbDatabase.Text + "Set SINGLE_USER WHIH ROLLBACK IMMEDIATE;";
                sql += "Restore Databse " + cmbDatabase.Text + " FROM Disk = '" + txtRestoreFileLoc.Text + "' WITH Replace";
                commad = new SqlCommand(sql, conn);
                commad.ExecuteNonQuery();
                conn.Close();
                conn.Dispose();
                commad.Dispose();

                MessageBox.Show("Restore ist komplett!");

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

restore_fehlermeldung.jpg

Wer kann mir da weiterhelfen.

Horst
 
WHIH zu WITH ändern? :-)
 
Hallo Horst,

spontan würde ich sagen, dass dir beim ersten Befehl ("ALTER DATABASE") ein Leerzeichen vor dem "Set" fehlt und wie DarthSpot schon erwähnt das WHIH durch WITH ersetzen:

Code:
sql = "Alter Database " + cmbDatabase.Text + "Set SINGLE_USER WHIH ROLLBACK IMMEDIATE;";

ändern in

Code:
sql = "Alter Database " + cmbDatabase.Text + " Set SINGLE_USER WITH ROLLBACK IMMEDIATE;";

Viel Erfolg!

Rossibaer
 
auch in 8 ist ein Fehler: ..."Restore Databse "-> "Restore Database "
 
Horst, alles in allem würde ich dir raten deine Sql-Befehle zuerst in einem SqlTool zu testen (mit hardcodierten Werten), bevor du diese in deinen C# Code einbaust. Alles Schritt für Schritt, d.h. zuerst die Befehle im z.B. SQL Management Studio ausführen, klappt es nicht, dann Fehler beheben, klappt es, dann in einen String mit hardcodierten Werten in deinen C# Code einbauen (Copy&Paste) und über die Objekte und deren Methoden anwenden. Klappt es nicht, dann Fehler beheben, klappt es, dann die dynamischen Teile einzeln durch String Concat oder mit dem + Operator ersetzen und immer wieder testen. Das solange bis der Code vollständig steht, du dein Ziel erreicht hast und keine Fehler mehr auftreten. Wie mir scheint versuchst du zuviele Schritte auf einmal zu machen und fällst damit auf die Nase. Lass dir Zeit bei der Entwicklung und überstürze nichts. Wie gesagt alles Schritt für Schritt.

Viel Erfolg
Rossibaer
 
Zuletzt bearbeitet:
Zurück
Oben