У меня есть локальная копия базы данных SQL Server, хранящаяся в виде файла MDF. Есть ли способ сказать, какая версия SQL Server использовалась для создания этого файла?
sql-server
Бен МакКормак
источник
источник
Используйте RESTORE HEADERONLY, например
Вы получите много столбцов, но интерес представляют SoftwareVersionMajor, SoftwareVersionMinor и SoftwareVersionBuild, которые должны предоставить номер версии SQL Server. В нашей системе, например, это 10, 0 и 4000, что означает 10.0.4000 (2008 SP2).
Не уверен, что произойдет, если вы попытаетесь сделать это с резервной копией, которая слишком старая, чтобы быть восстановленной в той версии, на которой работает сервер, однако - вы можете просто получить сообщение об ошибке и никакой информации (хотя это само по себе, по крайней мере, даст некоторые подсказки для версия это от).
источник
Для файлов MDF попробуйте эту команду:
Это будет выводить 3 свойства со значениями:
Database name
,Database version
иCollation
.Синтаксис следующий (команда недокументирована, поэтому больше информации здесь ):
источник
Хороший вопрос! Я не верю в это, за исключением процесса проб и ошибок, скажем, попыток восстановления файла резервной копии SQL Server 2008 R2 на SQL Server 2005. Очевидно, что это не сработает. Я не могу вспомнить, показало ли использование Management Studio - и нажатие на кнопку содержимого для восстановления - что-нибудь интересное.
Я не пробовал их, но возможно, что сторонний инструмент, такой как Virtual Gate Restore, скажет вам - он позволяет вам просматривать базу данных «внутри» файла резервной копии. http://www.red-gate.com/products/dba/sql-virtual-restore/
источник
Вы можете найти это, используя информацию на странице загрузки базы данных. Я писал об этом на http://sankarreddy.com/2010/05/database-internal-version-create-version-and-current-version/
источник
Лучший способ, который я когда-либо видел, был найден в этом посте на форумах MSDN по SQL Server.
В основном это включает в себя вход в файл и изучение страницы загрузки файла mdf.
источник