
A Microsoft SQLDMO Object Library alapértelmezésben nem kerül telepítésre a számítógép merevlemezére. A program használata előtt győződjön meg róla, hogy a komponens rendelkezésre áll.
A műveletek elvégzése előtt most is azzal kell kezdenünk, hogy referenciaként megadjuk az SQLDMO Object Library-t.
Ehhez válasszuk a Project – Add reference menüpontot, majd a megjelenő ablakban a COM lapon keressük elő ezt és adjuk hozzá projektünkhöz. A komponens objektumaira ezt követően az SQLDMO objektumon keresztül hivatkozhatunk.
A programban induláskor megvizsgáljuk, hogy hány adatbázisszerver érhető el aktuálisan a rendszerben. A műveletek elérése előtt kapcsolatot kell létrehoznunk az adott szerverrel. Ezt megtehetjük, ha megadjuk az elérni kívánt szerver nevét, egy login nevet és egy jelszót.
A projektben létrehozhatunk egy kapcsolatot a megadott adatbázisszerver egy adatbázisával, majd készítethetünk róla egy mentést a megadott állományba. Amennyiben szükséges, helyre is állíthatjuk azt.
A mentés és helyreállítás művelete hibajelzéssel félbeszakad, amennyiben valamely adminisztrációs alkalmazás kapcsolódik a MS SQL Server példányhoz. A művelet előtt gondoskodjunk ezek bezárásáról.
Adatbázis mentése
A mentés műveletét a Backup osztály segítségével végezhetjük el a következő módon:
SQLDMO.Backup backup = new SQLDMO.BackupClass();
Megadjuk, hogy az adatbázis állományairól készüljön a mentés, és a mentendő állomány a szövegmezőben megadott nevet viselje.
backup.Devices = backup.Files;
backup.Files = textBox1.Text;
Meg kell adnunk az adatbázis nevét, majd a SQLBackup metódussal elvégezni a mentést.
backup.Database = comboBox2.Text;
backup.SQLBackup(server);
A mentés, amennyiben csak fájlnevet adunk meg, az MS SQL Server mappájában található Backup alkönyvtárba kerül.
Adatbázis helyreállítása
Az adatbázis helyreállításához a Restore osztályt kell példányosítanunk.
SQLDMO.Restore restore = new SQLDMO.RestoreClass();
Itt is specifikálnunk kell a helyreállítandó objektumokat, és hogy a mentett állomány hol található.
restore.Devices = restore.Files;
restore.Files = textBox1.Text;
Majd miután megadtuk, hogy melyik adatbázist kívánjuk helyreállítani, illetve azt, hogy a művelet milyen természetű legyen (vagyis hogy az adatbázis elérhető állományai felülíródjanak), az SQLRestore metódussal végezzük el a helyreállítást.
restore.Database = comboBox2.Text;
restore.ReplaceDatabase = true;
restore.SQLRestore(server);