Soru sql server: dışa aktarma / içe aktarmada kimlik sütununu kaybetme


Son zamanlarda SQL Server ile uğraşmaya başladım, önceki deneyimlerim MS-Access'teydi.

Bir db içe / dışa aktarırken, sunucudan bilgisayarıma veya hatta sunucudan, birincil anahtarlı tüm sütun anahtarı kaybeder. Kimlik false olarak ayarlanmış ve hatta bit varsayılan değere ayarlanmamıştır.

Db'nin ve verilerinin tam bir kopyasını yapmak için nasıl bir ithalat / ihracat işi kullanabilirim? Başka bir proje için, aynı db'yi başka bir yerde istediğimde her zaman bir yedekleme yapmak ve geri yüklemek zorunda kalmak istemiyorum.

"Haritalamayı düzenle" yi ve onay kutusunu okudum, ancak kimlik belirtimine yardımcı olmadı ... ve tabloların ve diğer şeylerin ana anahtarı nedir?


5
2017-08-28 18:23


Menşei


Neden import / exüort'un yedekleme / geri yükleme işleminden daha iyi olduğunu düşünüyorsunuz? - gbn
marc_s: Bir sql sunucusundan diğerine aktarıyorum, ahh! @gbn: Sanmıyorum, yedeklemeye gerek kalmadan bir yerden başka bir yere aktarmak daha kolay, yedekleme dosyasını sunucuya yüklemek ve geri yüklemek - Y.G.J
Yine - çoğu zaman işe yarayacak bir yöntem değil. Verileri ve çıplak kemikleri yapısını kopyalayacak - ancak hiçbir kısıtlama, kimlik özellikleri ve benzerleri. Bu şekilde. Yedekleme / geri yükleme işlemini de tavsiye ederim. İRADE ayarlarınızı ve her şeyinizi koruyun. - marc_s
@ Y.G.J: SQL Server ile yeni misiniz ve sorularınızı cevaplayan halkı daha iyi biliyor musunuz? İlginç bir yaklaşım ... - gbn
@YGJ, meh, sadece bir SQL Data Compare veya eşdeğer bir araç kullanın ve bir moot noktasıdır. Gerçek gelişim ile devam edebilir - Brian Webster


Cevaplar:


Eğer yedeklemeyi / geri yüklemeyi önlemek istiyorsanız (ya da ihtiyacınız varsa), bunu tavsiye ederim (eski şema NAME, sadece yapıyı korumak istemediğiniz varsayılarak bu adımlar) -

İndir opendbdiff. Kaynak ve (boş) hedef arasında 'Karşılaştır' seçeneğini seçin. Senkronizasyonu seç. Komut dosyası sekmesi ve sadece tablo oluşturma satırlarını kopyala (dbo.sysdiagrams tablosu olmadan). sql yönetim stüdyosu yeni sorguya yapıştırın, tablo adlarından önce görünen tüm şema isimlerini silin.

Şimdi birincil anahtarlar, kimlik vb. Dahil olmak üzere tam yapıya sahip olacaksınız. Sonraki adım - daha önce yaptığınız gibi sql server import ve export verisini kullanın (eşlemeleri düzenlemeyi ve hedef şemayı dbo olarak seçtiğinizden emin olun). Ayrıca, açılan kutuyu işaretlediğinizden ve hedef tabloyu yeniden oluşturduğunuzdan emin olun.


3
2017-07-08 13:15





Eğer kullanırsan SQL Veri KarşılaştırmasıKimlik sütunlarınız korunacaktır.

Bu gerçekten DB'nin mükemmel bir şekilde senkronize edilmesini sağlamanın en iyi yoludur ve Stackoverflow kurucuları tarafından şiddetle tavsiye edilir.

SSMS'de yerleşik Import / Export işlevini kullanmaya çalışmak genellikle bir kayıp savaşıdır.


3
2017-08-28 19:09



Onların 14 günlük duruşması beni kurtardı, departmanımın lisansını alması için gidiyor! OT: George W Bush'un savaşları kaybetmekten bahsetmesi komik;) - Niclas Lindqvist