{"id":307,"date":"2013-02-20T16:21:48","date_gmt":"2013-02-20T15:21:48","guid":{"rendered":"http:\/\/blog.systemconnect.dk\/?p=307"},"modified":"2017-09-08T13:35:32","modified_gmt":"2017-09-08T11:35:32","slug":"gammel-vin-pa-nye-flasker","status":"publish","type":"post","link":"https:\/\/scblog.lynge.org\/?p=307","title":{"rendered":"Gammel vin p\u00e5 nye flasker&#8230;"},"content":{"rendered":"<p>&#8230;eller gammel C5 p\u00e5 ny SQL-server.<\/p>\n<p>\u00d8nsker man det, s\u00e5 kan det v\u00e6re n\u00f8dvendigt at s\u00e6tte databasekompatibilitetslevel p\u00e5 SQL-serveren s\u00e5 man sl\u00e5r noget af den nye funktionalitet, som den gamle C5 ikke kan lide, helt fra.<\/p>\n<p>Du kan justere databasekompatibilitetslevel p\u00e5 hver enkelt database p\u00e5 SQL-serveren v.hj.a. SQL manageren.<\/p>\n<table>\n<tbody>\n<tr>\n<td><b>DB Komp.level *1)<\/b><\/td>\n<td><b>Svarer til<\/b><\/td>\n<td><b>C5 kerne version (og nyere)<\/b><\/td>\n<\/tr>\n<tr>\n<td>60<\/td>\n<td>SQL Server 6.0<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>65<\/td>\n<td>SQL Server 6.5<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>70<\/td>\n<td>SQL Server 7.0<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>80<\/td>\n<td>SQL Server 2000<\/td>\n<td>3.0 servicepack 3: 3.0 build 61\u00a0*2)<\/td>\n<\/tr>\n<tr>\n<td>90<\/td>\n<td>SQL Server 2005<\/td>\n<td>4.0 servicepack 1:\u00a04.0 build 40\u00a0*2) *4)<\/td>\n<\/tr>\n<tr>\n<td>100<\/td>\n<td>SQL Server 2008<br \/>\nSQL Server 2008 R2<\/td>\n<td>C5 2008: 4.2.1.349<\/td>\n<\/tr>\n<tr>\n<td>110<\/td>\n<td>SQL Server 2012<\/td>\n<td>Se note *7) for \u00e6ldre C5&#8217;ere<br \/>\nC5 2010: 4.3.1.282<br \/>\nC5 2012:\u00a04.4.0.191<\/td>\n<\/tr>\n<tr>\n<td>120<\/td>\n<td>SQL Server 2014<\/td>\n<td>Se note *7) for \u00e6ldre C5&#8217;ere<br \/>\n2010: 4.3.1.282 *3)<br \/>\nC5 2012: 4.4.0.191 *3)<\/td>\n<\/tr>\n<tr>\n<td>130<\/td>\n<td>SQL Server 2016<\/td>\n<td>Se note *7) for \u00e6ldre C5&#8217;ere<br \/>\nC5 2012: 4.4.2.479 *6)<\/td>\n<\/tr>\n<tr>\n<td>n\/a<\/td>\n<td>Azure SQL<\/td>\n<td>Supporteres IKKE af C5 *5)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>*1) Bem\u00e6rk at ikke alle databasekompatibilitetslevels supporteres p\u00e5 alle SQL-servere. Generelt supporteres kun\u00a0to kompatibilitetslevels bagud ift. SQL-serverens version<br \/>\n*2)\u00a0Bem\u00e6rk at kun 32 bits SQL Server er testet og dermed supporteres af Microsoft for disse C5 versioner. Vi er ikke bekendt med problemer ved 64 bits SQL og disse C5 versioner, men kan naturligvis ikke anbefale det n\u00e5r Microsoft ikke g\u00f8r<br \/>\n*3) Bem\u00e6rk at disse kerneversioner ikke officielt supporterer SQL Server 2014, men at det s\u00e5 vidt vides fungerer. Microsoft str\u00e6kker sig s\u00e5 langt som til at sige at de ikke er vidende om problemer med kernerne C5 2010: 4.3.2.327 og C5 2012: 4.4.1.371. Men officielt testet og certificeret bliver det f\u00f8rst senere &#8211; for C5 2012 vedkommende nok med C5 2012 SP2 kernen<br \/>\n*4) Bem\u00e6rk at C5 2012 fra version 4.4.2.470 ikke l\u00e6ngere\u00a0supporteres p\u00e5\u00a0SQL Server 2005 og \u00e6ldre. Kernen kan\u00a0i \u00f8vrigt heller ikke l\u00e6ngere afvikles p\u00e5 Windows XP og Windows Server 2003<br \/>\n*5) Du kan l\u00e6se mere om hvorfor Azure SQL ikke supporteres ved at <a href=\"http:\/\/blog.systemconnect.dk\/?p=1138\">klikke her<\/a>!<br \/>\n*6) C5 2012 kerner er fra version 4.4.2.479 testet p\u00e5 SQL Server 2016 CTP (Consumer Technology Preview) 2.4, mens kernerne fra version 4.4.2.509 er testet p\u00e5 SQL Server 2016 RC3 (Release Candidate 3). \u00c6ldre versioner (inkl. C5 2010) er ikke testet af Microsoft, men vi er ikke vidende om at C5 2010 kerneversion 4.3.1.282 og C5 2012 kerneversion 4.4.0.191 og nyere ikke fungerer korrekt p\u00e5 SQL Server 2016<br \/>\n*7) Pga. forskellige spidsfindigheder er der undtagelser fra hele den beskrevne logik &#8211; og derfor kan f\u00f8lgende table m\u00e5ske alligevel hj\u00e6lpe dig med at f\u00e5 din \u00e6ldre C5 til at fungere p\u00e5 SQL-servere fra version 2012 og frem:<\/p>\n<table>\n<tbody>\n<tr>\n<td><b>C5-version<\/b><\/td>\n<td><b>C5-kerneversion<\/b><\/td>\n<td><b>Bem\u00e6rkning<\/b><\/td>\n<\/tr>\n<tr>\n<td>4.0 SP1<\/td>\n<td>4.1.0.180<\/td>\n<td>OK fordi kernen pga. en bug reelt k\u00f8rer med -zzH142<\/td>\n<\/tr>\n<tr>\n<td>2008 RTM<\/td>\n<td>4.2.0.256<\/td>\n<td>OK fordi kernen pga. en bug reelt k\u00f8rer med -zzH142<\/td>\n<\/tr>\n<tr>\n<td>2008 SP1<\/td>\n<td>4.2.1.249<\/td>\n<td>Kan k\u00f8re med -zzH142 eller -zzH138<\/td>\n<\/tr>\n<tr>\n<td>2010 RTM<\/td>\n<td>4.3.0.120<\/td>\n<td>Kan k\u00f8re med -zzH142 eller -zzH138<\/td>\n<\/tr>\n<tr>\n<td>2010 SP1<\/td>\n<td>4.3.1.234<\/td>\n<td>Kan k\u00f8re med -zzH142 eller -zzH138<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Eksempel: Vil du k\u00f8re din C5 p\u00e5 en SQL-server 2012, s\u00e5 SKAL du have en 2010 kerne nyere end 4.3.1.282, eller en 2012 kerne nyere end 4.4.0.191&#8230; Eller s\u00e6tte kompatibilitetslevel s\u00e5 C5 tror at serveren er \u00e6ldre (3.0 sp3 kan dog ikke k\u00f8re p\u00e5 en 2012 server grundet note 1 ovenfor).<\/p>\n<p>&nbsp;<\/p>\n<p>K\u00f8rer du fx en C5 2010\u00a0med en for gammel kerne p\u00e5 SQL 2012, vil du typisk f\u00e5 fejlen &#8220;FASTFIRSTROW&#8221; is not a recognized table hints option:<\/p>\n<div id=\"attachment_390\" style=\"width: 520px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/blog.systemconnect.dk\/wp-content\/uploads\/2013\/02\/a.png\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-390\" class=\"wp-image-390 size-full\" src=\"http:\/\/blog.systemconnect.dk\/wp-content\/uploads\/2013\/02\/a.png\" alt=\"a\" width=\"510\" height=\"125\" srcset=\"https:\/\/scblog.lynge.org\/wp-content\/uploads\/2013\/02\/a.png 510w, https:\/\/scblog.lynge.org\/wp-content\/uploads\/2013\/02\/a-300x73.png 300w, https:\/\/scblog.lynge.org\/wp-content\/uploads\/2013\/02\/a-500x122.png 500w\" sizes=\"auto, (max-width: 510px) 100vw, 510px\" \/><\/a><p id=\"caption-attachment-390\" class=\"wp-caption-text\">&#8220;FASTFIRSTROW&#8221; is not a recognized table hints option<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>L\u00f8sningen p\u00e5 det KAN v\u00e6re at sl\u00e5 FASTFIRSTROW fra i C5 kernen v.hj.a. parameteren -zzH. Se evt. <a href=\"http:\/\/blog.systemconnect.dk\/?p=450\">dette blogindl\u00e6g<\/a>\u00a0og note *7) om bl.a. den parameter.<\/p>\n<p>Bem\u00e6rk: Generelt kan\u00a0alle C5-versioner som udgangspunkt\u00a0altid k\u00f8re p\u00e5 en \u00e6ldre udgave af SQL-serveren (se dog note 4 ovenfor), om end den formentligt vil k\u00f8re bedre p\u00e5 en nyere udgave da den nye teknologi anvendes. Bedste performance opn\u00e5s\u00a0derfor\u00a0ved at bruge h\u00f8jest mulige kompatibilitetslevel og\u00a0SQL-server version.<\/p>\n<p>Fortvivl ikke hvis du gerne vil k\u00f8re en \u00e6ldre C5&#8217;er p\u00e5 en ny SQL-server &#8211; du beh\u00f8ver ikke n\u00f8dvendigvis opgradere\u00a0hele din C5 hvis du har mange tilpasninger, men\u00a0kan muligvis n\u00f8jes med en kerneopgradering &#8211; <a title=\"Kernen falder aldrig langt fra applikationen\" href=\"http:\/\/blog.systemconnect.dk\/?p=517\">l\u00e6s mere her!<\/a><\/p>\n<hr \/>\n<p>15.01.2015 Indl\u00e6g er opdateret omkring note 2: det pr\u00e6ciseres at 64 bits SQL blot ikke er testet af Microsoft p\u00e5 de p\u00e5g\u00e6ldende\u00a0C5 versioner. Tak til Thomas Buhr for at stille uddybende sp\u00f8rgsm\u00e5l s\u00e5 vi kunne pr\u00e6cisere det<\/p>\n<p>03.07.2015 Note 4 tilf\u00f8jet ifm. frigivelsen af kerne build 4.4.2.470<\/p>\n<p>13.05.2016 SQL Azure samt note 5 tilf\u00f8jet<\/p>\n<p>11.07.2016 SQL 2016 samt note 6 tilf\u00f8jet<\/p>\n<p>27.01.2017 En l\u00f8sning omkring FASTFIRSTROW fejlen tilf\u00f8jet. Stor tak til Lars Simonsen fra <a href=\"http:\/\/www.pentacon.dk\/\" target=\"_blank\" rel=\"noopener\"><u><span style=\"color: #0066cc;\">PentaCon<\/span><\/u><\/a> for at minde mig om den :-).<\/p>\n<p>08.09.2017 Tilf\u00f8jet en table med afvigelser fra FASTFIRSTROW fejlen, samt fjernet at C5 kan k\u00f8re p\u00e5 Azure SQL fordi vi er blevet klogere &#8211; se note *7)<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#8230;eller gammel C5 p\u00e5 ny SQL-server. \u00d8nsker man det, s\u00e5 kan det v\u00e6re n\u00f8dvendigt at s\u00e6tte databasekompatibilitetslevel p\u00e5 SQL-serveren s\u00e5 man sl\u00e5r noget af den nye funktionalitet, som den gamle C5 ikke kan lide, helt fra. Du kan justere databasekompatibilitetslevel &hellip; <a href=\"https:\/\/scblog.lynge.org\/?p=307\">L\u00e6s resten <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[37,6,4],"tags":[15,43,13,22,11,53,14,28,7],"class_list":["post-307","post","type-post","status-publish","format-standard","hentry","category-klassisk-c5","category-klassisk-c5-support","category-klassisk-c5-teknik","tag-business-solutions","tag-c5","tag-damgaard-data","tag-database","tag-dynamics","tag-klassisk-c5","tag-microsoft","tag-sql","tag-versioner"],"_links":{"self":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/307","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=307"}],"version-history":[{"count":28,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/307\/revisions"}],"predecessor-version":[{"id":1145,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=\/wp\/v2\/posts\/307\/revisions\/1145"}],"wp:attachment":[{"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=307"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=307"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/scblog.lynge.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=307"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}