b840f3f7503f885debbc7f728005d9ce8d13444a
API/CodeSamples/ForceOptimizeForUnknownMsSql.md
| ... | ... | @@ -0,0 +1,52 @@ |
| 1 | +#ForceOptimizeForUnknownMsSql |
|
| 2 | + |
|
| 3 | +[[_TOC_]] |
|
| 4 | + |
|
| 5 | +##About |
|
| 6 | + |
|
| 7 | +Gets or sets whether MS SQL queries will have the OPTIMIZE FOR UNKNOWN optimizer hint appended to the ends of queries. This can help with performance when working with complex databases or extremely large amounts of table data where filter parameters can be vastly different between executions and when query execution plans can vary depending on those parameters. |
|
| 8 | + |
|
| 9 | +**Default Value:** false |
|
| 10 | + |
|
| 11 | +##Global.asax (C♯) |
|
| 12 | + |
|
| 13 | +```csharp |
|
| 14 | +//main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig |
|
| 15 | +public class CustomAdHocConfig : Izenda.AdHoc.DatabaseAdHocConfig |
|
| 16 | +{ |
|
| 17 | + // Configure settings |
|
| 18 | + // Add custom settings after setting the license key and connection string by overriding the ConfigureSettings() method |
|
| 19 | + public static void InitializeReporting() { |
|
| 20 | + //Check to see if we've already initialized. |
|
| 21 | + if (AdHocContext.Initialized) |
|
| 22 | + return; |
|
| 23 | + AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE"; |
|
| 24 | + AdHocSettings.SqlServerConnectionString = "INSERT_CONNECTION_STRING_HERE"; |
|
| 25 | + Izenda.AdHoc.AdHocSettings.AdHocConfig = new CustomAdHocConfig(); |
|
| 26 | + AdHocSettings.ForceOptimizeForUnknownMsSql = true; //The relevant setting |
|
| 27 | + AdHocContext.Initialized = true; |
|
| 28 | + } |
|
| 29 | +} |
|
| 30 | +``` |
|
| 31 | + |
|
| 32 | +##Global.asax (VB.NET) |
|
| 33 | + |
|
| 34 | +```visualbasic |
|
| 35 | + |
|
| 36 | +'main class: inherits DatabaseAdHocConfig or FileSystemAdHocConfig |
|
| 37 | +Public Class CustomAdHocConfig |
|
| 38 | + Inherits Izenda.AdHoc.DatabaseAdHocConfig |
|
| 39 | + |
|
| 40 | + Shared Sub InitializeReporting() |
|
| 41 | + 'Check to see if we've already initialized |
|
| 42 | + If AdHocContext.Initialized Then |
|
| 43 | + Return |
|
| 44 | + 'Initialize System |
|
| 45 | + AdHocSettings.LicenseKey = "INSERT_LICENSE_KEY_HERE" |
|
| 46 | + AdHocSettings.SqlServerConnectionString = "INSERT_CONNECTION_STRING_HERE" |
|
| 47 | + Izenda.AdHoc.AdHocSettings.AdHocConfig = New CustomAdHocConfig() |
|
| 48 | + AdHocSettings.ForceOptimizeForUnknownMsSql = True 'The relevant setting |
|
| 49 | + AdHocContext.Initialized = True |
|
| 50 | + End Sub |
|
| 51 | +End Class |
|
| 52 | +``` |
|
| ... | ... | \ No newline at end of file |