MSSQL de Veritabanı Diyagramlarını Yedekleme ve Yeniden Yükleme
MSSQL Veritabanındaki oluşturduğumuz diyagramları yedeklemek veya yeniden yüklemek isteyebiliriz. Tablolar arasındaki ilişkiler, tablo sayısı arttıkça diyagramı yeniden oluşturmak çok ciddi bir zaman kaybına sebep olur. Bu durumda herhangi bir veri kaybı olmadan işlemimizi doğru ve eksiksiz gerçekleştirmeliyiz.
Bu yazımda MSSQL veritabanında diyagramların nasıl yedeği alınır ve yedeği alınan bir diyagram nasıl yeniden yüklenir sizlere anlatmaya çalışacağım.
Diyagramları Select Sorgusu İle Elde Etme
select name, principal_id, version, definition from KAYNAK_DATABASE_ADI.dbo.sysdiagrams
Yukarıdaki sorgu ile KAYNAK_DATABASE_ADI yerine yazdığınız veritabanı için bütün diyagramları elde edebilirsiniz. Bu sorguyu az sonra diyagramı insert etmek için kullanacağız. Yukarıdaki sorgudan gelen sonuç aşağıdaki gibidir;
Diyagramları Insert Sorgusu İle Yükleme
Aşağıdaki insert sorgusu ile HEDEF_DATABASE_ADI yerine yazdığınız veritabanına diyagram kaydedebilirsiniz. Ancak şunu belirtmek istiyorum; select sorgusundan gelen veriyi aşağıdaki gibi direkt kaydetmeye çalışırsanız sorgu çalışır ve kayıt işlemi gerçekleşir. Ama insert ettiğiniz diyagramı görüntülemek istediğinizde aşağıdaki outputu almanız olasıdır;
insert into HEDEF_DATABASE_ADI.dbo.sysdiagrams (name, principal_id, version, definition)
values
('Diyagram_Adı', 1, 1, 0xD0CF...)
Bunun anlamı diyagram kaydedilirken "definition" sütunu eksik veya yanlış yüklenmiş demektir. Bu yüzden insert işleminin değerlerini manuel girmemeliyiz. Aşağıdaki gibi yüklemek bu problemi ortadan kaldırır.
insert into HEDEF_DATABASE_ADI.dbo.sysdiagrams (name, principal_id, version, definition)
select name, principal_id, version, definition from KAYNAK_DATABASE_ADI.dbo.sysdiagrams
Bu yazımda veritabanındaki mevcut diyagramın select sorgusu ile elde edilmesi ve elde edilen diyagramın insert sorgusu ile yeniden yüklenmesinden bahsetmeye çalıştım. Bu konuyla ilgili sorunuz varsa aşağıdan bu yorum yapabilirsiniz veya buradan bana mesaj gönderebilirsiniz.
Sevgiyle kalın
Paylaş
Yorum Yap
Bu gönderi hakkında sorularınızı, görüşlerinizi veya eleştirilerinizi benimle paylaşabilirsiniz. Email adresiniz kimseyle paylaşılmayacaktır.
Yorumlar (0)
Bu gönderi için henüz yorum yapılmadı. İlk yorumu yapan sen ol.