1

I have some SSIS Packages that were developed in (SQL Server Data Tools for) Visual Studio 2013 using SQL Server 2014. The packages are supposed to be moved to a server running SQL Server 2012.

During the install we get an error that says the packages are not compitable with SQL Server 2012. Apparently Visual Studio 2013 is not backwards compatible from SQL Server 2014 to SQL Server 2012? But, Visual Studio 2015 is.

So, do the SSIS packages have to be rewritten in Visual Studio 2015 to work with SQL Server 2012? Or is there another way to make it work without rewriting them...

dhead61
  • 15
  • 2
  • 7
  • The VS version shouldn't be the problem, the package version is. If you deployed it on SQL Server 2014 the package will have been upgraded and the version number is higher than what 2012 will accept. Assuming you're not doing anything exciting in the package itself, you should be able to get around this by monkey patching the `.dtsx` file to use the appropriate version number and/or GUID (don't ask me what that is, exactly, but you can crib from a freshly created package targeting SQL Server 2012). – Jeroen Mostert Nov 30 '18 at 16:35

2 Answers2

1

No, prior to Visual Studio 2015, you had to install a specific version of Visual Studio in order to target a specific version of SQL Server.

So, you need to use Visual Studio versions 2012, 2015, or 2017* to target SQL Server 2012. Visual Studio 2013 is only compatible with SQL Server 2014.

Starting with Visual Studio 2015, Microsoft introduced the concept of SQL Server targeting, which allowed you to develop for various SQL Server versions without having to install a specific version of Visual Studio. So, you can target SQL Server 2012 in Visual Studio 2015. See the following link for SQL Server Targeting in Visual Studio: https://blogs.msdn.microsoft.com/sqlgardner/2016/08/17/ssdt-vs2015-gotcha-target-server-version-new-feature/

*Note: As of SSDT 15.8.1, Visual Studio 2017 added support for SQL Server 2019 while removing support for SQL Server 2012. If you need to target SQL Server 2012 in Visual Studio 2017, you will need to use a version of SSDT prior to 15.8.1. See the change log here: https://learn.microsoft.com/en-us/sql/ssdt/changelog-for-sql-server-data-tools-ssdt?view=sql-server-2017

Beware of using SQL Server 2012 at this point as Microsoft is slowly phasing it out. In fact, I would be hesitant to use 2014 and would seriously consider going to either 2016 or 2017. Note: SQL Server 2019 is the next version that is coming out.

Community
  • 1
  • 1
J Weezy
  • 3,507
  • 3
  • 32
  • 88
-1

Although VS 2015 is supposed to be able to build packages for previous versions of SSIS, I have heard that it is not perfect at doing this.

If I were you, I would re-build the packages in VS 2010.

Tab Alleman
  • 31,483
  • 7
  • 36
  • 52
  • 1
    Interesting. I use SSDT 15.8 for VS2017 (not 15.8.1) and never had a problem against 2012. (15.8.1 removed support for 2012, so don't use that if you still have a 2012 instance.) – Thom A Nov 30 '18 at 17:02
  • 1
    To my knowledge, VS2010 does not target any version of SQL Server. – J Weezy Nov 30 '18 at 23:31
  • @JWeezy VS2010(Shell Integrated) targets SQL 2012 – Prabhat G Dec 03 '18 at 06:37
  • @PrabhatG I believe that is for VSTA (i.e., script components and script tasks), not the SSIS package designer itself. – J Weezy Dec 03 '18 at 15:29
  • @JWeezy I have personal experience using VS 2010 to build SSAS solutions for SQL 2012, so I know that VS 2010 "targets" SQL Server 2012. I don't have experience with using it for SSIS though. – Tab Alleman Dec 03 '18 at 15:30
  • @TabAlleman It appears you are correct. Though, Microsoft no longer makes that available. References are helpful: https://learn.microsoft.com/en-us/sql/ssdt/previous-releases-of-sql-server-data-tools-ssdt-and-ssdt-bi?view=sql-server-2017#links-to-download-pages – J Weezy Dec 03 '18 at 15:38