1

Topic: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

1 I create on 2016 basis and I change COMPATIBILITY_LEVEL on 100 (I check - really costs 100)
2 I create the table and I throw there the data
3 I disconnect and I throw on other sideboard
4. Other sideboard 2008 writes that cannot connect for 852 version (it is the version of 2016
As it is designated here http://sqlserverbuilds.blogspot.ru/2014 … ions.html)
And can only 655 - . as though the version and COMPATIBILITY_LEVEL are not connected that-whether
If I am fair in  - as mdf to create on 2016 and to throw on 2008 on simple, after all like
On all manuals should... I can certainly in text throw off the data for a transfer - me
To understand that I do incorrectly

2

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong;
If I am not mistaken, on the low version not

3

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

Yes to me to read - it is possible on English - Google throws out too much - it is necessary to select the question text

4

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

if I am fair in  - as mdf to create on 2016 and to throw on 2008 on simple, after all like
On all manuals should...

Any wrong manuals.
Never and for what high basis on the low server to connect,  it is impossible.
And Compatibility Level does not concern at all the data file.
I.e. absolutely.
Changing CL, anything dataful does not become, only any archaic elements of language suddenly become accessible;
Type star connections in CL = 80
Well or the old optimizer it is possible on new basis , in such spirit

5

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

wrote:

as though the version and COMPATIBILITY_LEVEL are not connected that-whether

That's it.
Not as though and whether that.
Are not connected in any way and all here.
The basis version is a certain data storage format and a broad gull.
And this format it is possible only , irrevocably

6

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

?
And here it is possible in a fire chamber:
ALTER DATABASE AdventureWorks2012
SET COMPATIBILITY_LEVEL = 110;
Like as it is a question of basis...
https://docs.microsoft.com/en-us/sql/t- … lity-level
Not well is not present so is not present... We make crutches

7

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

yes to me to read - it is possible on English - Google throws out too much - it is necessary to select the question text

Here so approaches?

wrote:

a SQL Server does not allow you to restore or attach a database from a higher version of a SQL Server to a lower version of a SQL Server.

How to migrate an A SQL Server database to a lower version
The official I can not find.
Ruined msdn too irrevocably.
"", Kozlovy

8

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

?
And here it is possible in a fire chamber:
ALTER DATABASE AdventureWorks2012
SET COMPATIBILITY_LEVEL = 110;
Like as it is a question of basis...
https://docs.microsoft.com/en-us/sql/t- … lity-level
Not well is not present so is not present... We make crutches

In sense in a fire chamber? There it is accurately written that this command does:

wrote:

Sets certain database behaviors to be compatible with the specified version of a SQL Server.

Does not change basis, and changes behavior of basis so that the behavior was compatible to the certain version.

9

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

?
And here it is possible in a fire chamber:
ALTER DATABASE AdventureWorks2012
SET COMPATIBILITY_LEVEL = 110;
Like as it is a question of basis...

In a pancake.
You read, that to you answer?
Basis  - bytes in mdf, ldf really change.
Unilaterally, reversely you will not replace.
And CL change though days without a break there-back.
And it in any way does not affect files of basis.
The version of basis it that in

dbcc dbinfo with tableresults

The first line, dbi_version
Here change CL to and watch for dbi_version, changes or not

10

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

Well as foreheads to which it was necessary in zero with MSA97 to pass MSA2000 and it is reverse
It somehow all not to understand... Time reformatted means and it is reversely possible with
Functionality losses...
Well  - left...

11

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

well as foreheads to which it was necessary in zero with MSA97 to pass MSA2000 and it is reverse
It somehow all not to understand... Time reformatted means and it is reversely possible with
Functionality losses...
Well  - left...

It is possible to tear the old server, to pick up as a link, and on it to overtake all data.

12

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

well as foreheads to which it was necessary in zero with MSA97 to pass MSA2000 and it is reverse
It somehow all not to understand... Time reformatted means and it is reversely possible with
Functionality losses...
Well  - left...

You confuse it "is theoretically possible" with it "is almost possible".
Theoretically a great lot of all is possible, and practically only that MS implemented

13

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

In CREATE DATABASE (Transact-SQL) it is specified
https://technet.microsoft.com/en-us/library/ms176061 (v=sql.110).aspx
A database created by a more recent version of A SQL Server cannot be attached in earlier versions.

14

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

yes to me to read - it is possible on English - Google throws out too much - it is necessary to select the question text

More shortly, here the link, there in the first paragraph all is written

And generally, if data volumes absolutely small it is possible  basis entirely together with the data and to fulfill on other server

15

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

Shakill wrote:

it is passed...
More shortly, here the link, there in the first paragraph all is written
it is passed...
And generally, if data volumes absolutely small it is possible  basis entirely together with the data and to fulfill on other server

So, and if big - that besides  basis entirely and to overtake the data through bcp.

16

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

Shakill wrote:

it is passed...
More shortly, here the link, there in the first paragraph all is written
it is passed...
And generally, if data volumes absolutely small it is possible  basis entirely together with the data and to fulfill on other server

It is possible, and it is possible and from the server on the server, if speech about the data.
But the HARDWARE does not reflect, probably, or is assured of compatibility of any triggers, procedures, functions, syntactic constructions etc.

17

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

Yes not - it is good to you already... Simply in txt . Million records I throw,
Also I recover by the remote machine. Simply wanted to simplify
Process... And so it was necessary to be shifted
Thanks for arguing
(By the way tried to create basis on 2008
Then to fill it on 2016 and again
On 2008 - not  - the same error - well I do not know
- Personally to me it is not clear - if is CL that why
I cannot use in practice compatibility)

18

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

well I do not know
- Personally to me it is not clear - if is CL that why
I cannot use in practice compatibility

to you really it is necessary to explain,  you cannot use a functional imagined by you? It is written that CL influences behavior of the code and the optimizer, but it is not written anywhere that influences a basis format.

19

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

SangYong wrote:

personally to me it is not clear - if is CL that why
I cannot use in practice compatibility

Imagine CL as partial backward compatibility.
reverse compatibility is not present Full.

20

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

21

Re: COMPATIBILITY_LEVEL - 2016-> 2008 it is impossible

It is possible to experiment
We create basis on SQL 2005 and it is unhitched

USE [master]
GO
CREATE DATABASE [test]
ON PRIMARY
(NAME = N'test_dat ', FILENAME = N'C:\temp\2005\test_dat.mdf ', SIZE = 3MB, MAXSIZE = UNLIMITED, FILEGROWTH = 3MB)
LOG ON
(NAME = N'test_log ', FILENAME = N'C:\temp\2005\test_log.ldf ', SIZE = 3MB, MAXSIZE = UNLIMITED, FILEGROWTH = 3MB)
GO
ALTER DATABASE [test] SET RECOVERY SIMPLE
GO
exec sp_detach_db @dbname=N'test'

We copy, we connect on SQL 2016 and it is unhitched

exec sp_attach_db
@dbname = N'test ';
@filename1 = N'C:\temp\2005\test_dat.mdf ';
@filename2 = N'C:\temp\2005\test_log.ldf ';
/*
Database conversion "test" from version 611 to current version 852.
The database "test" fulfills a step of update from version 611 to version 621.
The database "test" fulfills a step of update from version 621 to version 622.
The database "test" fulfills a step of update from version 622 to version 625.
...
The database "test" fulfills a step of update from version 849 to version 850.
The database "test" fulfills a step of update from version 850 to version 851.
The database "test" fulfills a step of update from version 851 to version 852.
*/
exec sp_detach_db @dbname=N'test'

We compare

C:\fc.exe/B C:\TEMP\2005\test_dat.mdf C:\TEMP\2016\test_dat.mdf

We are not surprised.
That, as followed expect