We recently released a new version of the DACFx runtime, DACFx (October 2012). This latest release brings with it several changes that affect compatibility between DACFx and SQL Server Data Tools (SSDT).
Scenarios:
- User attempts to exercise DACFx functionality within SSDT including browsing a server/database in SQL Server Object Explorer, using Schema Compare, or opening a Database Project.
- User attempts to use a .dacpac inside SSDT via Schema Compare, Add Database Reference, or Import from .dacpac.
Symptoms:
- Warning dialog surfaces similar to the image below stating: “This version of SQL Server Data Tools is not compatible with the database runtime components on this computer”
- Error surfaces in one of the following pathways:
- Import from .dacpac – "Internal Error. The internal target platform type Sql100DatabaseSchemaProvider does not support schema file version '2.5'" or "An incompatible dacpac was encountered."
- Schema Compare - “Schema Compare cannot handle this dacpac version.”
- Add Database Reference - “<dacpac file> is not accessible or is not a valid schema (.dacpac) file.”
Issues:
- SSDT September 2012 and previous SSDT releases are not compatible with this new version of DACFX.
- Packages created by this release of DACFx (and later) containing Selective XML Indexes (SXI) or packaged table data cannot be consumed by previous releases of DACFx and SSDT.
Why:
DACFX (October 2012) introduces a new package format and support for features available in SQL Server 2012 Service Pack 1. These changes impact compatibility with SSDT resulting in the use of this newer DACFx version to be blocked to avoid compatibility issues customers could experience. This compatibility issue does not impact SQL Server Management Studio (SSMS) or other client tools.
Workaround/Resolution:
- Although DACFx (October 2012) is not compatible with previously released versions of SSDT, it ships with and is compatible with the newly released SSDT November 2012 available here.
- Previous releases of SSDT and DACFx do not have support for features mentioned above that may now be part of DAC packages. These packages cannot be consumed by previous versions and this behavior is expected.
Note: If you have already acquired DACFx (October 2012) to enable scenarios in other Microsoft products which depend on this latest version of DACFx, removing it to repair SSDT will break these scenarios.