{"id":521,"date":"2011-11-03T14:09:00","date_gmt":"2011-11-03T14:09:00","guid":{"rendered":"\/blogs\/bobb\/post\/SQL-Server-2012-client-features-ADONET-402-released.aspx"},"modified":"2013-01-04T00:00:36","modified_gmt":"2013-01-04T08:00:36","slug":"sql-server-2012-client-features-ado-net-4-02-released","status":"publish","type":"post","link":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/","title":{"rendered":"SQL Server 2012 client features &#8211; ADO.NET 4.02 released"},"content":{"rendered":"<p>\nThis post is about the changes in the client stack for SQL Server 2012. It&#39;s a very short post. The last two major releases of SQL Server (2005 and 2008) corresponded to .NET 2.0 and .NET 3.5 SP1 respectively. In addition, each one corresponded to a new version of SNAC (SQL Native Client, that is, ODBC and OLE DB). The JDBC driver followed, but trailed a bit behind.\n<\/p>\n<p>\nNewer clients have needed to be installed to support newer features. Table-valued parameters, new data types (including XML and UDTs), MARS, and filestream file access are a few features from previous (2005,2008) versions that come to mind.\n<\/p>\n<p>\nSQL Server 2012 ships with a new SNAC provider\/driver, named &quot;SQL Native Client 11.0&quot; according to the ODBC control panel applet. The new feature changes are documented in the SQL Server 2012 Books Online. In addition, <a href=\"http:\/\/msdn.microsoft.com\/en-us\/vstudio\/aa496123\">.NET version 4.02<\/a> shipped just recently to add SQL Server 2012 support. There are three changes, according to the corresponding <a href=\"http:\/\/support.microsoft.com\/kb\/2544514\">knowledge base article<\/a>. The main features correspond to the Always-On functionality in SQL Server.\n<\/p>\n<p>\nThere are two new connection string keywords:\n<\/p>\n<p>\nApplicationIntent<br \/>\nThis can be ReadOnly or ReadWrite(default). When ReadOnly is used, applications can directly connect to a read-only secondary server, or can be automatically redirected to secondary servers in an availability group.\n<\/p>\n<p>\nMultiSubnetFailover<br \/>\nThis keyword can be Yes or No(default). When Yes is specified, the client supports fast failover connectivity for geographically-distributed topologies through faster detection of and connection to the (currently) active server.\n<\/p>\n<p>\nIn addition, the .NET 4.02 supports connection to LocalDB (the standalone, local version of SQL Server used by the Visual Studio Data Tools) by the developer. Can&#39;t find any reference to this for SNAC 11, but I&#39;d suppose LocalDB is supported with these APIs too.\n<\/p>\n<p>\nOne&nbsp;new SQL Server 2012 feature&nbsp;I wrote about before that I didn&#39;t find in ADO.NET 4.02 was support for the <a href=\"http:\/\/3.209.169.194\/blogs\/bobb\/correlating-client-and-server-side-trace-in-sql-server-denali\/\" class=\"broken_link\">correlated server\/client trace<\/a> using BID tracing and XEvents. Jerome Halmans showed this in his SQLPASS summit talk and this will be supported in ADO.NET 4.5 (the version of ADO.NET that shipped as part of the Windows 8 beta). And&nbsp;correlated trace&nbsp;IS currently supported with SNAC 11.\n<\/p>\n<p>\n@bobbeauch<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post is about the changes in the client stack for SQL Server 2012. It&#39;s a very short post. The last two major releases of SQL Server (2005 and 2008) corresponded to .NET 2.0 and .NET 3.5 SP1 respectively. In addition, each one corresponded to a new version of SNAC (SQL Native Client, that is, [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[12,31],"tags":[],"class_list":["post-521","post","type-post","status-publish","format-standard","hentry","category-data-access","category-sql-server-2012"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.9.1 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin\" \/>\n<meta property=\"og:description\" content=\"This post is about the changes in the client stack for SQL Server 2012. It&#039;s a very short post. The last two major releases of SQL Server (2005 and 2008) corresponded to .NET 2.0 and .NET 3.5 SP1 respectively. In addition, each one corresponded to a new version of SNAC (SQL Native Client, that is, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/\" \/>\n<meta property=\"og:site_name\" content=\"Bob Beauchemin\" \/>\n<meta property=\"article:published_time\" content=\"2011-11-03T14:09:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2013-01-04T08:00:36+00:00\" \/>\n<meta name=\"author\" content=\"Bob Beauchemin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Bob Beauchemin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/\",\"name\":\"SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin\",\"isPartOf\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/#website\"},\"datePublished\":\"2011-11-03T14:09:00+00:00\",\"dateModified\":\"2013-01-04T08:00:36+00:00\",\"author\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/62bfa986c5b5d28fcffd8b4fc409c73e\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Data Access\",\"item\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/category\/data-access\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"SQL Server 2012 client features &#8211; ADO.NET 4.02 released\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/#website\",\"url\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/\",\"name\":\"Bob Beauchemin\",\"description\":\"SQL Server Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/62bfa986c5b5d28fcffd8b4fc409c73e\",\"name\":\"Bob Beauchemin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6f80e6cc667410857fa6a21931dc528b8092f4d112bf7a8ff7c267674d44ee37?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6f80e6cc667410857fa6a21931dc528b8092f4d112bf7a8ff7c267674d44ee37?s=96&d=mm&r=g\",\"caption\":\"Bob Beauchemin\"},\"sameAs\":[\"http:\/www.sqlskills.com\/blogs\/bobb\/\"],\"url\":\"https:\/\/www.sqlskills.com\/blogs\/bobb\/author\/bobb\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/","og_locale":"en_US","og_type":"article","og_title":"SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin","og_description":"This post is about the changes in the client stack for SQL Server 2012. It&#39;s a very short post. The last two major releases of SQL Server (2005 and 2008) corresponded to .NET 2.0 and .NET 3.5 SP1 respectively. In addition, each one corresponded to a new version of SNAC (SQL Native Client, that is, [&hellip;]","og_url":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/","og_site_name":"Bob Beauchemin","article_published_time":"2011-11-03T14:09:00+00:00","article_modified_time":"2013-01-04T08:00:36+00:00","author":"Bob Beauchemin","twitter_misc":{"Written by":"Bob Beauchemin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/","url":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/","name":"SQL Server 2012 client features - ADO.NET 4.02 released - Bob Beauchemin","isPartOf":{"@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/#website"},"datePublished":"2011-11-03T14:09:00+00:00","dateModified":"2013-01-04T08:00:36+00:00","author":{"@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/62bfa986c5b5d28fcffd8b4fc409c73e"},"breadcrumb":{"@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/sql-server-2012-client-features-ado-net-4-02-released\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.sqlskills.com\/blogs\/bobb\/"},{"@type":"ListItem","position":2,"name":"Data Access","item":"https:\/\/www.sqlskills.com\/blogs\/bobb\/category\/data-access\/"},{"@type":"ListItem","position":3,"name":"SQL Server 2012 client features &#8211; ADO.NET 4.02 released"}]},{"@type":"WebSite","@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/#website","url":"https:\/\/www.sqlskills.com\/blogs\/bobb\/","name":"Bob Beauchemin","description":"SQL Server Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.sqlskills.com\/blogs\/bobb\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/62bfa986c5b5d28fcffd8b4fc409c73e","name":"Bob Beauchemin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.sqlskills.com\/blogs\/bobb\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6f80e6cc667410857fa6a21931dc528b8092f4d112bf7a8ff7c267674d44ee37?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6f80e6cc667410857fa6a21931dc528b8092f4d112bf7a8ff7c267674d44ee37?s=96&d=mm&r=g","caption":"Bob Beauchemin"},"sameAs":["http:\/www.sqlskills.com\/blogs\/bobb\/"],"url":"https:\/\/www.sqlskills.com\/blogs\/bobb\/author\/bobb\/"}]}},"_links":{"self":[{"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/posts\/521","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/comments?post=521"}],"version-history":[{"count":0,"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/posts\/521\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/media?parent=521"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/categories?post=521"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.sqlskills.com\/blogs\/bobb\/wp-json\/wp\/v2\/tags?post=521"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}