SQL Server'da Script Almak 1262012620 okunma
Script almak kavramı veritabanının koda dökülmesi manasına gelir. Bilinir ki veritabanında görselde eklediğimiz her şey aslında arka planda yapılan komutlardır. Komutların çıktısının alınması, yani baştan aşağı oluşturulması aynı zamanda veritabanını tekrar oluşturabilir. Hatta verilerle birlikte alınırsa bu bir yedek olur. Script almak bir nevi veritabanını yedeklemektir. Veritabanı yedekleme yöntemlerinden biridir.
Script’in avantajı hızlı olmasıdır. Normal bir veritabanını yedeklediğinizde .mdf ve .ldf dosyalarını almak zorundasınız. Mdf dosyasının boyutuna 100 mb verildiğini ancak veritabanında pek de veri olmadığını gördüğünüzde 100 mb’lık veriyi yanınızda taşımak zorunda olacaksınız. Oysaki veritabanının tamamının scriptini alarak veritabanı baştan oluşturulabilir. Ayrıca bu 10-11 kb’larla telaffuz edilir.
Script almak için önce SQL Server Management Studio’da oturum açalım. Ardından veritabanın üzerine gelelim.
Script’ini alacağımız veritabanının üzerinde sağ tuş yapın ve Tasks kısmından Generate Scripts’e tıklayın.
Karşımıza küçük bir sihirbaz gelecektir. Sccript almanın çeşitli seçenekleri vardır. Verileri almak istemezsiniz, yalnızca verileri almak isteyebilirsiniz veya yalnızca tabloların olmasını istersiniz vb. gibi birçok seçenekleri var. Hepsine değinmeyeceğim.
Gelen ekranda next diyerek ilerleyelim.
Veritabanında olan tüm objeler bize gözükecek.
Script entire database and all database objects: Veritabanındaki girdilerin ve tüm veritabanı objelerin verilerini script al seçeneği.
Select specific database objects: Spesifik veritabanı objelerini seçmenizi sağlayan seçenek.
Isterseniz tüm veritabanının scriptini alabilirsiniz. Dilerseniz de dilediğiniz tabloyu veya stored procedure, trigger gibi bileşenleri de seçebilirsiniz. Tamamıyla özelleştirilebilir. Tüm veritabanının scriptini alacağını varsaydığımdan üst seçenekle devam ediyorum. Ardından next diyerek ilerleyelim.
Gel gelelim çıkış türüne. Bu scripti diskimizdeki bir yere de kaydedebiliriz Web servisi kullanarak farklı bir sunucuya da. Şu an için diske kaydetmek istediğimizden “Save scripts to specific location” seçeneğini seçiyoruz. Save to file kısmından File name bölümünden isim ve yer belirtebiliriz.
Unicode text olarak veya ANSI text olarak da kaydedebiliriz.
Şu anda bu haliyle verileri almadan yalnızca tabloları ve diğer objelerle birlikte script alacak.
Eğer verilerin de sriptini alınmasını istiyorsanız, Advanced butonuna tıklayın.
Gelişmiş script ayarlarından bunu ayarlayabiliriz.
Advanced butonuna bastıktan sonra seçeneklerimiz gelecek.
Types of data to script kısmını Schema and data yapın. Schema only gibi seçenekler yalnızca veritabanı objelerini yapar. Ardından OK diyerek ayarları kaydedin.
Son adım ise yaptıklarımızın özetidir. Next diyerek işlemi başlatalım.
Veritabanımda olan tüm veriler ve objeler script alınıyor. Aşağıda görülebilir.
Işlem bitince finish diyerek pencereyi kapatalım. Script’i nereye aldıysak dosyayı açalım, script’i nasıl aldığını merak etmiş olabilirsiniz.
Görüleceği üzereT-SQL sorgularıdır. Hızlı bir şekilde script alıp dilediğimiz gibi veritabanını yedeklemiş olduk.
Alınan Script’i Çalıştırmak
Iyi güzel de ben bu scripti başka bir bilgisayarda nasıl çalıştıracağım? E çok basit. Dilerseniz scripti aldıktan sonra veritabanınızı silin. Korkmanıza gerek yok. Aynı isimde bir veritabanı oluşturun. Script dosyasını açın. Oluşturduğunuz veritabanında o scripti çalıştırın, işlem tamamdır. Birkaç saniye içinde sorgular çalıştırılmış olacak.
Konuyla ilgili sorunlarınızı BilişimLife Forum içerisinde Veritabanı kategorisine başlık olarak bildirebilirsiniz.
Kolay gelsin.
Recep ŞERIT
BİR YORUM YAZIN