SQL Server 2012 SSMS with SQL Server 2008 R2 database engine - sql-server

I use SQL Server 2008 R2 as the database engine. With my MSDN subscription, I can get SQL Server 2012 for development use. Since I noticed some cool things in 2012 SSMS, my question is that if I only use 2012 SSMS and keep 2008 R2 as the database engine, will there be any difference in scripts' generation or any other effects?
Thanks.
UPDATE 1:
Oh yes, I saw this page: SQL Server Database Engine Backward Compatibility, but it is not exactly what I am looking for.

No, there should be no ill effects.
SSMS 2012 should generate scripts that are compatible with the database version that is being actively used.

Related

Can I use SSRS 2008 R2 with a SQL Server 2008 database?

I have some databases on a SQL Server 2008 instance. I want to report on them so I installed SSRS 2008, which is obviously ancient. I know SSRS 2008 R2 uses Report Builder 3.0 though so I was blithly confident 2008 does too, but it turns out that SQL Server 2008 uses Report Builder 1.0 which is quite different.
I want to know if I can install SSRS 2008 R2 and hook it up to the SQL Server 2008 database, or will this simply not work.
I know the right answer is to upgrade all the things, but alas that's not possible at the moment.
Unfortunately, SSRS2008R2 documentation seems is not available anymore.
However, according to official docs of newer release: Even SSRS 2014 can run on following instances:
SQL Server 2014
SQL Server 2012
SQL Server 2008 R2
SQL Server 2008
SQL Server 2005
Therefore, assumption that SSRS 2008R2 with a high probability will run without problems on SQL 2008 data engine

Snapshot for different SQL Server Version

Can I create a snapshot from SQL Server 2012 on a SQL Server 2008 R2 Server?
The goal is to build reporting and queries without locking the live database.
I need only a DB copy (Getdate()-1)
No, the SQL Server 2012 snapshot has specific SQL Server 2012 features in it that are not compatible with SQL Server 2008 R2. These are incompatibilities that you will not see. They are deep in the SQL Server engine. You cannot do this.
It's a similar concept to trying to restore a SQL Server 2012 database backup to a SQL Server 2008 R2 instance. The higher database version cannot backstep to a lower version.
You need to use a SQL Server of the same level or higher (I believe or higher) for your snapshot server.

SQL Server express backup

Can I use a SQL Server Express database backup file to restore that database on a full fledged version of SQL Server. I am particularly looking at SQL Server 2008 Express to SQL Server 2012 Enterprise. And if so how?
Lets be clear about one thing first, SQL Server Express , Standard and Enterprise are the Editions.
SQL Server 2005 , 2008, 2008 R2 and 2012 are SQL Server versions.
Now coming to your question whether you can restore a database from 2008 Express to 2012 Enterprise?
The Simple Answer would be YES you can.
A couple of things to keep in mind.
SQL Server Editions has no limitation you can backup and restore databases from one Edition to another without any restrictions (Except SQL Server Express which can only accommodate databases upto 10 GB). Other than this size limitation in SQL Server express, all is good.
Whereas SQL Server Versions has a very strict limitation, You can go up 3 versions but cannot go down at all.
For example if you had taken a backup on SQL Server 2008 (regardless of Edition) you can restore this backup onto a SQL Server 2008, 2008 R2 , 2012 and I think also on 2014. But you cannot restore this onto a SQL Server 2005.
I hope the explanation clears some confusions.

Transaction log shipping in different edition of sql server 2014

We are considering to upgrade our Database from SQL Server 2008 R2 to SQL Server 2014. However, The new licensing with Core based seem to be very expensive.
We have one primary database and one secondary database. If we have SQL Server 2014 Enterprise Edition for the Primary database and SQL Server 2014 Standard Edition for the Secondary Database.
Question 1)
Is it possible to run transaction log shipping in different edition as above?
Question 2)
Could it be possible to run it from SQL Server 2014 to SQL Server 2008 R2?
Is it possible to run transaction log shipping in different edition as above?
Going for possibility yes it is possible to configure log shipping between SQL Server 2012 Enterprise and standard edition. But Just think of scenario where you are using enterprise features in Enterprise edition and failover happens now SQL server is on standrad edition and enterprise features will not work and you might face issue with application, some functionality crashing. I dont think you want this.
Plus again if you are using enterprise features and to configure loghshipping you take backup of enterprise edition and try to restore it on standard it would fail saying the backup has enterprise features and DB cannot be brought online because current database does not supports it
Could it be possible to run it from SQL Server 2014 to SQL Server 2008 R2?
No because you cannot restore database backup taken on SQL Server 2014 on SQL Server 2008 R2. If you like to make SQL Server 2008 R2 as primary and 2014 as secondary then you may succeed in configuring logshipping using T-SQL scripts( you cannot do it using GUI) but consider scenario where failover occurs and 2014 is new primary you cannot fail it back to 2008 r2 as Higher to lower version is not allowed.
Hope this is clear

How to change database engine in SQL Server

I am working in SSMS 2012. I recently discovered that 2012 built-in functions like TRY_CONVERT and DATEFROMPARTS are not recognized by my particular instance. So, I checked my database engine (at least, I think it's the engine I'm checking) via SELECT ##VERSION, and it returned Microsoft SQL Server 2008 (RTM) - 10.01.1600.22 (X64). If this is an engine problem (i.e., I'm not using the 2012 engine), how do I update / change the engine to the 2012 version?
I can see 3 factors as play here than can confuse you:
SSMS Version: SSMS is only the GUI to access SQL Server. Later version of SSMS can access earlier version of the SQL Server Engine. The fact that you are running SSMS 2012 doesn't mean you will get access to new functions in SQL Server 2012.
SQL Server Engine Version: I think this is your problem. The result you got clearly indicate it's 2008.
Compatibility level: you can run a newer SQL Server Engine as if it's an older one. So you can run SQL Server 2012 as 2008 or even 2005. In that case, even though you engine supports these new functions, the compatibility level prevents you from using them.
I think your problem is that you are accessing SQL Server 2008 through SSMS 2012. Get the proper version of SQL Server through MSDN, SQL Server Express (free) or DreamSpark( if you are a student).

Resources