Saya memiliki salinan lokal dari SQL Server DB yang disimpan sebagai file MDF. Apakah ada cara untuk mengetahui versi SQL Server apa yang digunakan untuk membuat file itu?
sql-server
Ben McCormack
sumber
sumber
Gunakan RESTORE HEADERONLY, mis
Anda akan mendapatkan banyak kolom, tetapi yang menarik adalah SoftwareVersionMajor, SoftwareVersionMinor, dan SoftwareVersionBuild, yang akan memberi Anda nomor versi SQL Server. Pada sistem kami, misalnya, ini adalah 10, 0, dan 4000, artinya 10.0.4000 (2008 SP2).
Tidak yakin apa yang terjadi jika Anda mencoba melakukan ini dengan cadangan yang terlalu lama untuk dipulihkan pada versi server yang sedang berjalan, namun - Anda mungkin hanya mendapatkan kesalahan dan tidak ada info (meskipun itu sendiri setidaknya akan memberikan beberapa petunjuk tentang versi dari).
sumber
Untuk file MDF, coba perintah ini:
Itu akan menampilkan 3 properti dengan nilai-nilai:
Database name
,Database version
danCollation
.Sintaks mengikuti (perintah tidak berdokumen, oleh karena itu info lebih lanjut di sini ):
sumber
Pertanyaan bagus! Saya tidak percaya begitu, terlepas dari proses coba-coba - katakan - mencoba mengembalikan file cadangan SQL Server 2008 R2 ke SQL Server 2005. Jelas, itu tidak akan berhasil. Saya tidak dapat mengingat apakah menggunakan Management Studio - dan mengklik tombol isi untuk pengembalian - akan menampilkan sesuatu yang menarik.
Saya belum mencobanya, tetapi mungkin alat pihak ketiga seperti Red Gate's Virtual Restore akan memberi tahu Anda - ini memungkinkan Anda untuk melihat database "di dalam" file cadangan. http://www.red-gate.com/products/dba/sql-virtual-restore/
sumber
Anda dapat menemukan ini menggunakan informasi di halaman boot database. Saya menulis tentang ini di http://sankarreddy.com/2010/05/database-internal-version-create-version-and-current-version/
sumber
Cara terbaik yang pernah saya lihat untuk melakukan ini diperoleh dari posting ini di forum MSDN SQL Server.
Pada dasarnya ini melibatkan masuk ke file dan memeriksa halaman boot file mdf.
sumber