MS SQL Server 2005 - SMO - 1

MS SQL Server 2005 - SMO - 1 Bu yazımızda SMO (SQL Management Objects)"i konu alacağız. Nedir?, Nasıl Kullanılır? gibi sorulara demolarla yanıt bulmaya çalışacağız.SMO sayesinde MS SQL Server 7.0, 8.0(2000) ve 9.0(2005) versiyonlarını yönetebilirsiniz. 6.0 ve 6.5 için ise bazı hataların oluşması sözkonusu.SMO kullanarak uygulama geliştirebilmek için .Net Framework 2.0"a eklenen bazı namespace leri kullanabiliyor olmanız yeterli;

- Microsoft.SqlServer.DMO.dll - SMO ana sınıflarına erişim sağlar- Microsoft.SqlServer.ConnectionInfo.dll - SQL Server instance larına bağlanmayı sağlar

SQL Server"ın eski versiyonlarında Distributed Management Objects adını verdiğimiz ve SQL-DMO olarak adlandırılan teknoloji ile SQL Server"ın yönetimini programlayabiliyorduk. SMO ise SQL-DMO"yuda kapsar bir yapıyla ve çok daha fazla yeni özellikle karşımıza çıkıyor.Nesne ModeliSMO sayesinde SQL Server Instancelarına, veratabanlarına, schemalara, stored procedurelere, tablolara ve viewlere erişmeniz ve .Net"in programit gücünü burada kullanmanız mümkün.Yine SMO sayesinde backup, restore, scripting ve SSIS(SQL Server Integration System) çözümlerine ulaşmanız ve yönetmeniz mümkün.Service Broker gibi, Notification Services gibi MS SQL Server 2005 servislerine erişmeniz mümkün.Bunun için yapmanız gereken basit anlamda yaratacağınız bir projenize SMO namespacelerini eklemek;Visual Basic.NetImports Microsoft.SqlServer.Management.SmoImports Microsoft.SqlServer.Management.CommonVisual C#.Netusing Microsoft.SqlServer.Management.Smo;using Microsoft.SqlServer.Management.Common;Şimdi basit bir demo yaparak SMO namespacelerini uygulamalarımızda nasıl kullanabiliriz bunu görelim.DEMO 1: Bu demoda windows forms application yaratacak ve SQL Server ile ilgili bilgileri messagebox lar içinde görüntüleyeceğiz. Bunun için yeni bir proje yaratalım ve form üzerine sadece bir buton koyalım. Butona tıklamamızın ardından önce SQL Server bağlantımız gerçekleşsin ardından da bağlandığımız SQL Server için bazı bilgileri alalım.Imports Microsoft.SqlServer.Management.SmoImports Microsoft.SqlServer.Management.CommonPublic Class Form1   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click          "Server tipinde bir nesne yaratıyoruz           "Bu nesne bizim MS SQL Serverımızı temsil ediyor      Dim myServer As New Server()      "Yeni bir connection nesnesi yaratıyor ve veritabanına bağlanıyoruz          "Bağlantı için localhost"u kullanacağız.      Dim conn As ServerConnection = myServer.ConnectionContext      conn.ServerInstance = "localhost"      "Servera bağlanıyoruz      conn.Connect()      "SQL Server bağlantımızı messageboxta görüntülüyoruz      MessageBox.Show("Connected to localhost")      "Sırasıyla bağlandığımız MS SQL Serverın türünü, dilini,          "işletim sistemini, platformunu, ürün türünü, versiyon numarasını ve hata log path          "bilgisini messageboxlar kullanarak ekrana getiriyoruz.      MessageBox.Show("Edition: " & myServer.Information.Edition)      MessageBox.Show("Language: " & myServer.Information.Language)      MessageBox.Show("OSVersion: " & myServer.Information.OSVersion)      MessageBox.Show("Platform: " & myServer.Information.Platform)      MessageBox.Show("Product: " & myServer.Information.Product)      MessageBox.Show("Version: " & myServer.Information.VersionString)      MessageBox.Show("ErrorLogPath: " & myServer.Information.ErrorLogPath)   End SubEnd Class

Ve elbette ekran görüntülerimiz.   Bunlar elbette SMO"nun sadece SQL Server bilgilerini getirdiği özelliklerine örnek gösterilebilir. Bir sonraki yazımızda SMO kullanarak yeni tabloların yaratılması, mevcut tablolara yeni kolonların eklenmesi gibi veritabanı nesneleri ile çalışmaya yönelik tamamen örneklere dayalı olacağız.

Döküman Arama

Başlık :

Kapat