This should not be possible according to documentation here and quoted below unless the DAC Framework version are the same.
'A DAC package or export file built with one version of the DAC Framework cannot be processed by an earlier version of the DAC Framework. For example, a DAC package extracted using the SQL Server 2012 client tools cannot be deployed using the SQL Server 2008 R2 client tools.'
This post is about a little experiment to test the validity of the above statement. In an earlier post in HodentekMSSS.blogspot.com here a .dac extracted from SQL Server 2012 was deployed to CTP1:
http://hodentekmsss.blogspot.com/2013/12/deploying-dac-to-sql-server-2014.html
The above post was about a DAC package extracted from SQL Server 2012 Express on Windows 7 Platform (x64) and deployed to SQL Server 2014 CTP1 on Windows 8 Preview platform.
In this post the database created using the above procedure was extracted and deployed back to SQL Server 2012 Express on the other partition. This was also successful in violation of the previously quoted procedure.
The reason was the DAC Framework versions were found to be the same on both servers using the DacUnpack utility.
The DacUnpack utility unpacks the .dac files. Here are the two files opened in Safari browser.
Northwind.dacpack's Origin.xml
3.0.0.0 false 2.0.0.0 1.0.0.0 4e266c18-42ec-4e0c-b3ce-5894ab3f1cd1 2013-12-09T15:29:51.5237832-10:00 0001-01-01T00:00:00.0000000 Microsoft.SqlServer.Dac, Version=10.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 11.0.2902.0 http://schemas.microsoft.com/sqlserver/dac/Serialization/2012/02
Microsoft SQL Server 2012 - 11.0.2218.0 (X64) Jun 12 2012 13:05:25 Copyright (c) Microsoft Corporation Express Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
8 103 1 9 13 27 1 1 13 9 1 100 11 1 19
16 C3CCC630725BF4F1785C54AEC314B1D687A323EDAD15DA1235BA5CFD6FC5865A
NorthwindCTP1.dacpack's Origin.xml (obtained after unpacking)
3.0.0.0 false 2.0.0.0 c1c8859f-2548-4873-a550-b322e63d5ef4 2013-12-26T10:09:30.4691845-10:00 0001-01-01T00:00:00.0000000 Microsoft.SqlServer.Dac, Version=10.3.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a 10.3.0.0 http://schemas.microsoft.com/sqlserver/dac/Serialization/2012/02
Microsoft SQL Server 2014 (CTP1) - 11.0.9120.5 (X64) Jun 10 2013 20:09:10 Copyright (c) Microsoft Corporation Enterprise Evaluation Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) (Hypervisor)
8 103 1 9 13 27 1 1 13 9 1 100 11 1 19
16 87A4AC4BF297030FAFDEA917D02EF357DFDC8F92CED835DA64DF47683B851272
'A DAC package or export file built with one version of the DAC Framework cannot be processed by an earlier version of the DAC Framework. For example, a DAC package extracted using the SQL Server 2012 client tools cannot be deployed using the SQL Server 2008 R2 client tools.'
This post is about a little experiment to test the validity of the above statement. In an earlier post in HodentekMSSS.blogspot.com here a .dac extracted from SQL Server 2012 was deployed to CTP1:
http://hodentekmsss.blogspot.com/2013/12/deploying-dac-to-sql-server-2014.html
The above post was about a DAC package extracted from SQL Server 2012 Express on Windows 7 Platform (x64) and deployed to SQL Server 2014 CTP1 on Windows 8 Preview platform.
In this post the database created using the above procedure was extracted and deployed back to SQL Server 2012 Express on the other partition. This was also successful in violation of the previously quoted procedure.
The reason was the DAC Framework versions were found to be the same on both servers using the DacUnpack utility.
The DacUnpack utility unpacks the .dac files. Here are the two files opened in Safari browser.
Northwind.dacpack's Origin.xml
NorthwindCTP1.dacpack's Origin.xml (obtained after unpacking)
No comments:
Post a Comment