diff --git a/FormCompareTools/FormCompareTools.sln b/FormCompareTools/FormCompareTools.sln
new file mode 100644
index 0000000..b2de601
--- /dev/null
+++ b/FormCompareTools/FormCompareTools.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.9.34723.18
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FormCompareTool", "FormCompareTools\FormCompareTool.csproj", "{4F190146-1762-464F-B27C-B849E908346D}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {4F190146-1762-464F-B27C-B849E908346D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {4F190146-1762-464F-B27C-B849E908346D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {4F190146-1762-464F-B27C-B849E908346D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {4F190146-1762-464F-B27C-B849E908346D}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {8F26CE78-19C2-40AA-B6EA-255F66DA6090}
+ EndGlobalSection
+EndGlobal
diff --git a/FormCompareTools/FormCompareTools/App.config b/FormCompareTools/FormCompareTools/App.config
new file mode 100644
index 0000000..4b9b712
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/App.config
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FormCompareTools/FormCompareTools/FormCompareTool.csproj b/FormCompareTools/FormCompareTools/FormCompareTool.csproj
new file mode 100644
index 0000000..ca716bd
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/FormCompareTool.csproj
@@ -0,0 +1,166 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {4F190146-1762-464F-B27C-B849E908346D}
+ Exe
+ FormCompareTools
+ FormCompareTools
+ v4.7.2
+ 512
+ true
+ true
+
+
+ preview
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+ ..\packages\ClosedXML.0.102.2\lib\netstandard2.0\ClosedXML.dll
+
+
+ ..\packages\Dapper.2.1.35\lib\net461\Dapper.dll
+
+
+ ..\packages\DocumentFormat.OpenXml.2.16.0\lib\net46\DocumentFormat.OpenXml.dll
+
+
+ ..\packages\ExcelNumberFormat.1.1.0\lib\net20\ExcelNumberFormat.dll
+
+
+ ..\packages\Irony.NetCore.1.0.11\lib\net461\Irony.dll
+
+
+ ..\packages\Microsoft.Bcl.AsyncInterfaces.8.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll
+
+
+ ..\bin\8.3.0\MySql.Data.dll
+
+
+ ..\packages\SixLabors.Fonts.1.0.0\lib\netstandard2.0\SixLabors.Fonts.dll
+
+
+
+ ..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll
+
+
+
+
+
+ ..\packages\System.IO.4.3.0\lib\net462\System.IO.dll
+ True
+ True
+
+
+ ..\packages\System.IO.Packaging.6.0.0\lib\net461\System.IO.Packaging.dll
+
+
+ ..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll
+
+
+ ..\packages\System.Net.Http.4.3.4\lib\net46\System.Net.Http.dll
+ True
+ True
+
+
+
+ ..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll
+
+
+ ..\packages\System.Runtime.4.3.0\lib\net462\System.Runtime.dll
+ True
+ True
+
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ ..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net463\System.Security.Cryptography.Algorithms.dll
+ True
+ True
+
+
+ ..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll
+ True
+ True
+
+
+ ..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll
+ True
+ True
+
+
+ ..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll
+ True
+ True
+
+
+ ..\packages\System.Text.Encodings.Web.8.0.0\lib\net462\System.Text.Encodings.Web.dll
+
+
+ ..\packages\System.Text.Json.8.0.4\lib\net462\System.Text.Json.dll
+
+
+ ..\packages\System.Text.RegularExpressions.4.3.1\lib\net463\System.Text.RegularExpressions.dll
+ True
+ True
+
+
+ ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll
+
+
+ ..\packages\System.ValueTuple.4.5.0\lib\net47\System.ValueTuple.dll
+
+
+
+
+
+
+
+
+ ..\packages\XLParser.1.5.2\lib\net461\XLParser.dll
+
+
+
+
+
+
+
+
+
+
+
+ PreserveNewest
+
+
+ PreserveNewest
+
+
+ PreserveNewest
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FormCompareTools/FormCompareTools/FormParameters.cs b/FormCompareTools/FormCompareTools/FormParameters.cs
new file mode 100644
index 0000000..4ad01be
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/FormParameters.cs
@@ -0,0 +1,11 @@
+using System.Collections.Generic;
+
+namespace FormCompareTools
+{
+ internal class FormParameters
+ {
+ public string FormName { get; set; }
+ public string MainTableName { get; set; }
+ public Dictionary Columns { get; set; }
+ }
+}
diff --git a/FormCompareTools/FormCompareTools/InputParameters.cs b/FormCompareTools/FormCompareTools/InputParameters.cs
new file mode 100644
index 0000000..f03d089
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/InputParameters.cs
@@ -0,0 +1,16 @@
+namespace FormCompareTools
+{
+ internal class InputParameters
+ {
+ public string ExcelTemplate { get; set; }
+ public string ExcelOutput { get; set; }
+ public string PrimarySsn { get; set; }
+ public string FormName { get; set; }
+ public string TestName { get; set; }
+ public string LinesColumn { get; set; } = "A";
+ public string DatabaseColumn { get; set; } = "E";
+ public int FirstRow { get; set; }
+ public int LastRow { get; set; }
+ public string PrimarySsnCell { get; set; } = "C1";
+ }
+}
diff --git a/FormCompareTools/FormCompareTools/Program.cs b/FormCompareTools/FormCompareTools/Program.cs
new file mode 100644
index 0000000..41cece7
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/Program.cs
@@ -0,0 +1,172 @@
+using ClosedXML.Excel;
+using Dapper;
+using System;
+using System.Collections.Generic;
+using System.Configuration;
+using System.Data;
+using System.IO;
+using System.Text.Json;
+
+namespace FormCompareTools
+{
+ internal class Program
+ {
+ static string GetParametersFile(string[] args)
+ {
+ if (args.Length == 0)
+ {
+ return null;
+ }
+ var inputParametersJson = args[0];
+ if (File.Exists(inputParametersJson))
+ {
+ return inputParametersJson;
+ }
+
+ string appDirectory = AppDomain.CurrentDomain.BaseDirectory;
+ if (File.Exists(Path.Combine(appDirectory, inputParametersJson)))
+ {
+ return inputParametersJson;
+ }
+ return null;
+ }
+
+ static string GetFormParametersFile(string[] args)
+ {
+ if (args.Length < 2)
+ {
+ return null;
+ }
+
+ var inputParametersJson = args[1];
+ if (File.Exists(inputParametersJson))
+ {
+ return inputParametersJson;
+ }
+
+ string appDirectory = AppDomain.CurrentDomain.BaseDirectory;
+ if (File.Exists(Path.Combine(appDirectory, inputParametersJson)))
+ {
+ return inputParametersJson;
+ }
+ return null;
+ }
+
+ static void Main(string[] args){
+ var inputParametersJson = GetParametersFile(args);
+ var inputFormParametersJson = GetFormParametersFile(args);
+
+ if (string.IsNullOrWhiteSpace(inputParametersJson) || string.IsNullOrWhiteSpace(inputFormParametersJson))
+ {
+ Console.WriteLine("Use FormCompareTool test_parameters.json form_parameters.json");
+ return;
+ }
+
+ InputParameters inputParameters;
+ using (var fs = File.OpenRead(inputParametersJson))
+ {
+ inputParameters = JsonSerializer.Deserialize(fs);
+ }
+
+ FormParameters formParameters;
+ using (var fs = File.OpenRead(inputFormParametersJson))
+ {
+ formParameters = JsonSerializer.Deserialize(fs);
+ }
+
+ var sheetName = $"{inputParameters.FormName}_{inputParameters.TestName}";
+
+ var wb = new XLWorkbook(inputParameters.ExcelTemplate);
+
+ if (wb.TryGetWorksheet(sheetName, out var worksheet))
+ {
+ var lines = formParameters.Columns;
+ var databaseFields = new List();
+ for (int i = inputParameters.FirstRow; i <= inputParameters.LastRow; i++)
+ {
+ var lineCell = $"{inputParameters.LinesColumn}{i}";
+ string lineNumber = GetCellValue(worksheet, lineCell);
+
+ if (lines.TryGetValue(lineNumber, out var lineDatabaseField))
+ {
+ databaseFields.Add(lineDatabaseField);
+ }
+ }
+
+ (var dbResult, var dt) = ReadFromDatabase(inputParameters.PrimarySsn, inputParameters.FormName, databaseFields, formParameters);
+ if (dbResult)
+ {
+ for (int i = inputParameters.FirstRow; i <= inputParameters.LastRow; i++)
+ {
+ var databaseValueCell = $"{inputParameters.DatabaseColumn}{i}";
+ var lineCell = $"{inputParameters.LinesColumn}{i}";
+ var lineNumber = GetCellValue(worksheet, lineCell);
+
+ if (lines.TryGetValue(lineNumber, out var lineDatabaseField))
+ {
+ var rawValue = dt.Rows[0][lineDatabaseField];
+ if (int.TryParse(rawValue.ToString(), out var intValue))
+ {
+ worksheet.Cell(databaseValueCell).Value = intValue;
+ }
+ else if (decimal.TryParse(rawValue.ToString(), out var decimalValue))
+ {
+ worksheet.Cell(databaseValueCell).Value = decimalValue;
+ }
+ else
+ {
+ worksheet.Cell(databaseValueCell).Value = rawValue.ToString();
+ }
+ }
+ }
+
+ worksheet.Cell(inputParameters.PrimarySsnCell).Value = inputParameters.PrimarySsn;
+ var uniqueKey = DateTime.Now.ToString("MMddhhmm");
+ var excelOutputFileName = string.Format(inputParameters.ExcelOutput, uniqueKey);
+ wb.SaveAs(excelOutputFileName);
+ Console.WriteLine($"Saved to {excelOutputFileName}");
+ }
+ }
+ if (Environment.UserInteractive)
+ {
+ Console.WriteLine($"Press any key to exit...");
+ Console.ReadLine();
+ }
+ }
+
+ private static string GetCellValue(IXLWorksheet worksheet, string lineCell)
+ {
+ var lineNumber = string.Empty;
+ if (worksheet.Cell(lineCell).Value.IsText)
+ {
+ lineNumber = worksheet.Cell(lineCell).Value.GetText();
+ }
+ else if (worksheet.Cell(lineCell).Value.IsNumber)
+ {
+ lineNumber = $"{worksheet.Cell(lineCell).Value.GetNumber()}";
+ }
+
+ return $"line_{lineNumber}";
+ }
+
+ static (bool result, DataTable table) ReadFromDatabase(string primaryssn, string formName, List fieldNames, FormParameters formParameters)
+ {
+ var database = ConfigurationManager.AppSettings["database"];
+ var connectionString = ConfigurationManager.ConnectionStrings[database].ConnectionString;
+
+ var sql = $"SELECT {string.Join(",", fieldNames)} FROM {formParameters.MainTableName} WHERE primaryssn='{primaryssn}' LIMIT 1";
+
+ using (var conn = new MySql.Data.MySqlClient.MySqlConnection(connectionString))
+ {
+ var reader = conn.ExecuteReader(sql);
+ var dt = new DataTable();
+ foreach(var field in fieldNames)
+ {
+ dt.Columns.Add(field, typeof(string));
+ }
+ dt.Load(reader);
+ return (dt.Rows.Count > 0, dt);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/FormCompareTools/FormCompareTools/Properties/AssemblyInfo.cs b/FormCompareTools/FormCompareTools/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..60ab980
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("FormCompareTools")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("HP Inc.")]
+[assembly: AssemblyProduct("FormCompareTools")]
+[assembly: AssemblyCopyright("Copyright © HP Inc. 2024")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible
+// to COM components. If you need to access a type in this assembly from
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("4f190146-1762-464f-b27c-b849e908346d")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/FormCompareTools/FormCompareTools/nm_forms.xlsx b/FormCompareTools/FormCompareTools/nm_forms.xlsx
new file mode 100644
index 0000000..162067e
Binary files /dev/null and b/FormCompareTools/FormCompareTools/nm_forms.xlsx differ
diff --git a/FormCompareTools/FormCompareTools/nm_pit_1.json b/FormCompareTools/FormCompareTools/nm_pit_1.json
new file mode 100644
index 0000000..502334b
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/nm_pit_1.json
@@ -0,0 +1,8 @@
+{
+ "FormName": "nm_pit_1",
+ "MainTableName": "nm_frm_pit_1",
+ "Columns": {
+ "line_1": "number_of_fed_exemptions",
+ "line_2": "fed_deduction_amt"
+ }
+}
diff --git a/FormCompareTools/FormCompareTools/nm_pit_1_test_1.json b/FormCompareTools/FormCompareTools/nm_pit_1_test_1.json
new file mode 100644
index 0000000..ec14cab
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/nm_pit_1_test_1.json
@@ -0,0 +1,12 @@
+{
+ "ExcelTemplate": "nm_forms.xlsx",
+ "ExcelOutput": "C:\\temp\\nm_forms_{0}.xlsx",
+ "PrimarySsn": "226966190",
+ "FormName": "nm_pit_1",
+ "TestName": "test_1",
+ "LinesColumn": "A",
+ "DatabaseColumn": "E",
+ "FirstRow": 4,
+ "LastRow": 8,
+ "PrimarySsnCell": "C1"
+}
\ No newline at end of file
diff --git a/FormCompareTools/FormCompareTools/packages.config b/FormCompareTools/FormCompareTools/packages.config
new file mode 100644
index 0000000..cfd840f
--- /dev/null
+++ b/FormCompareTools/FormCompareTools/packages.config
@@ -0,0 +1,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FormCompareTools/bin/8.3.0/MySql.Data.dll b/FormCompareTools/bin/8.3.0/MySql.Data.dll
new file mode 100644
index 0000000..91386c2
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Data.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Data.xml b/FormCompareTools/bin/8.3.0/MySql.Data.xml
new file mode 100644
index 0000000..a4b2746
--- /dev/null
+++ b/FormCompareTools/bin/8.3.0/MySql.Data.xml
@@ -0,0 +1,18611 @@
+
+
+
+ MySql.Data
+
+
+
+
+ The implementation of the caching_sha2_password authentication plugin.
+
+
+
+
+ Generates a byte array set with the password of the user in the expected format based on the
+ SSL settings of the current connection.
+
+ A byte array that contains the password of the user in the expected format.
+
+
+
+ Defines the stage of the authentication.
+
+
+
+
+ Allows connections to a user account set with the mysql_clear_password authentication plugin.
+
+
+
+
+ Method that parse the challenge received from server during authentication process.
+ This method extracts salt, relying party name and set it in the object.
+
+ Buffer holding the server challenge.
+ Thrown if an error occurs while parsing the challenge.
+
+
+
+ Signs the challenge obtained from the FIDO device and returns it to the server.
+
+
+
+
+ Method to obtain an assertion from a FIDO device.
+
+
+
+
+ Enables connections to a user account set with the authentication_kerberos authentication plugin.
+
+
+
+
+ Defines the default behavior for an authentication plugin.
+
+
+
+
+ Handles the iteration of the multifactor authentication.
+
+
+
+
+ Gets the AuthPlugin name of the AuthSwitchRequest.
+
+
+
+
+ Gets or sets the authentication data returned by the server.
+
+
+
+
+ This is a factory method that is used only internally. It creates an auth plugin based on the method type
+
+ Authentication method.
+ The driver.
+ The authentication data.
+ Boolean that indicates if the function will be executed asynchronously.
+ MultiFactorAuthentication iteration.
+
+
+
+
+ Gets the connection option settings.
+
+
+
+
+ Gets the server version associated with this authentication plugin.
+
+
+
+
+ Gets the encoding assigned to the native driver.
+
+
+
+
+ Sets the authentication data required to encode, encrypt, or convert the password of the user.
+
+ A byte array containing the authentication data provided by the server.
+ This method may be overriden based on the requirements by the implementing authentication plugin.
+
+
+
+ Defines the behavior when checking for constraints.
+
+ This method is intended to be overriden.
+
+
+
+ Throws a that encapsulates the original exception.
+
+ The exception to encapsulate.
+
+
+
+ Defines the behavior when authentication is successful.
+
+ This method is intended to be overriden.
+
+
+
+ Defines the behavior when more data is required from the server.
+
+ The data returned by the server.
+ Boolean that indicates if the function will be executed asynchronously.
+ The data to return to the server.
+ This method is intended to be overriden.
+
+
+
+ Gets the password for the iteration of the multifactor authentication
+
+ A password
+
+
+
+ Gets the plugin name based on the authentication plugin type defined during the creation of this object.
+
+
+
+
+ Gets the user name associated to the connection settings.
+
+ The user name associated to the connection settings.
+
+
+
+ Gets the encoded, encrypted, or converted password based on the authentication plugin type defined during the creation of this object.
+ This method is intended to be overriden.
+
+ An object containing the encoded, encrypted, or converted password.
+
+
+
+ Provides functionality to read, decode and convert PEM files to objects supported in .NET.
+
+
+
+
+ Converts the binary data of a PEM file to an object.
+
+ A binary representation of the public key provided by the server.
+ An object containing the data found in the public key.
+
+
+
+ Allows connections to a user account set with the authentication_ldap_sasl authentication plugin.
+
+
+
+
+ Determines if the character is a non-ASCII space.
+
+
+ This list was obtained from http://tools.ietf.org/html/rfc3454#appendix-C.1.2
+
+ true if the character is a non-ASCII space; otherwise, false.
+ The character.
+
+
+
+ Determines if the character is commonly mapped to nothing.
+
+
+ This list was obtained from http://tools.ietf.org/html/rfc3454#appendix-B.1
+
+ true if the character is commonly mapped to nothing; otherwise, false.
+ The character.
+
+
+
+ Determines if the character is prohibited.
+
+
+ This list was obtained from http://tools.ietf.org/html/rfc3454#appendix-C.3
+
+ true if the character is prohibited; otherwise, false.
+ The string.
+ The character index.
+
+
+
+ Prepares the user name or password string.
+
+ The string to prepare.
+ The prepared string.
+
+
+
+ Allows connections to a user account set with the mysql_native_password authentication plugin.
+
+
+
+
+ Returns a byte array containing the proper encryption of the
+ given password/seed according to the new 4.1.1 authentication scheme.
+
+
+
+
+
+
+
+ Enables connections from a user account set with the authentication_iam authentication plugin.
+
+
+
+
+ Verify that OCI .NET SDK is referenced.
+
+
+
+
+ Loads the profiles from the OCI config file.
+
+
+
+
+ Get the values for the key_file, fingerprint and security_token_file entries.
+
+
+
+
+ Sign nonce sent by server using SHA256 algorithm and the private key provided by the user.
+
+
+
+
+ Reads the security token file and verify it does not exceed the maximum value of 10KB.
+
+ The path to the security token.
+
+
+
+ Wraps up the fingerprint, signature and the token into a JSON format and encode it to a byte array.
+
+ The response packet that will be sent to the server.
+
+
+
+ Base class to handle SCRAM authentication methods
+
+
+
+
+ Defines the state of the authentication process.
+
+
+
+
+ Gets the name of the method.
+
+
+
+
+ Parses the server's challenge token and returns the next challenge response.
+
+ The next challenge response.
+
+
+
+ Builds up the client-first message.
+
+ An array of bytes containig the client-first message.
+
+
+
+ Processes the server response from the client-first message and
+ builds up the client-final message.
+
+ Response from the server.
+ An array of bytes containing the client-final message.
+
+
+
+ Validates the server response.
+
+ Server-final message
+
+
+
+ Creates the HMAC SHA1 context.
+
+ The HMAC context.
+ The secret key.
+
+
+
+ Apply the HMAC keyed algorithm.
+
+ The results of the HMAC keyed algorithm.
+ The key.
+ The string.
+
+
+
+ Applies the cryptographic hash function.
+
+ The results of the hash.
+ The string.
+
+
+
+ Applies the exclusive-or operation to combine two octet strings.
+
+ The alpha component.
+ The blue component.
+
+
+
+ The SCRAM-SHA-1 SASL mechanism.
+
+
+ A salted challenge/response SASL mechanism that uses the HMAC SHA-1 algorithm.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Creates a new SCRAM-SHA-1 SASL context.
+
+ The user name.
+ The password.
+ The host.
+
+
+
+ Gets the name of the method.
+
+
+
+
+ The SCRAM-SHA-256 SASL mechanism.
+
+
+ A salted challenge/response SASL mechanism that uses the HMAC SHA-256 algorithm.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ Creates a new SCRAM-SHA-256 SASL context.
+
+ The user name.
+ The password.
+ The host.
+
+
+
+ Gets the name of the method.
+
+
+
+
+ The implementation of the sha256_password authentication plugin.
+
+
+
+
+ The byte array representation of the public key provided by the server.
+
+
+
+
+ Applies XOR to the byte arrays provided as input.
+
+ A byte array that contains the results of the XOR operation.
+
+
+
+ Method that parse the challenge received from server during authentication process.
+ This method extracts salt and relying party name.
+
+ Buffer holding the server challenge.
+ Thrown if an error occurs while parsing the challenge.
+
+
+
+ Sets the ClientDataHash for the assertion
+
+
+
+
+ Method to obtains an assertion from a FIDO device.
+
+ The assertion.
+ Thrown if an error occurs while getting the assertion.
+
+
+
+ Allows connections to a user account set with the authentication_windows authentication plugin.
+
+
+
+
+ Allows importing large amounts of data into a database with bulk loading.
+
+
+
+
+ Initializes a new instance of the class using the specified instance of .
+
+ The that will be used to perform the bulk operation.
+
+
+
+ Gets or sets the connection.
+
+ The connection.
+
+
+
+ Gets or sets the field terminator.
+
+ The field terminator.
+
+
+
+ Gets or sets the line terminator.
+
+ The line terminator.
+
+
+
+ Gets or sets the name of the table.
+
+ The name of the table.
+
+
+
+ Gets or sets the character set.
+
+ The character set.
+
+
+
+ Gets or sets the name of the file.
+
+ The name of the file.
+
+
+
+ Gets or sets the timeout.
+
+ The timeout.
+
+
+
+ Gets or sets a value indicating whether the file name that is to be loaded
+ is local to the client or not. The default value is false.
+
+ true if local; otherwise, false.
+
+
+
+ Gets or sets the number of lines to skip.
+
+ The number of lines to skip.
+
+
+
+ Gets or sets the line prefix.
+
+ The line prefix.
+
+
+
+ Gets or sets the field quotation character.
+
+ The field quotation character.
+
+
+
+ Gets or sets a value indicating whether [field quotation optional].
+
+
+ true if [field quotation optional]; otherwise, false.
+
+
+
+
+ Gets or sets the escape character.
+
+ The escape character.
+
+
+
+ Gets or sets the conflict option.
+
+ The conflict option.
+
+
+
+ Gets or sets the priority.
+
+ The priority.
+
+
+
+ Gets the columns.
+
+ The columns.
+
+
+
+ Gets the expressions.
+
+ The expressions.
+
+
+
+ Executes the load operation.
+
+ The number of rows inserted.
+
+
+
+ Executes the load operation.
+
+ A object containing the data to be loaded.
+ The number of rows inserted.
+
+
+
+ Asynchronous version of the load operation.
+
+ The number of rows inserted.
+
+
+
+ Asynchronous version of the load operation that accepts a data stream.
+
+ A containing the data to be loaded.
+ The number of rows inserted.
+
+
+
+ Executes the load operation asynchronously while the cancellation isn't requested.
+
+ The cancellation token.
+ A containing the data to be loaded.
+ The number of rows inserted.
+
+
+
+ Represents the priority set for bulk loading operations.
+
+
+
+
+ This is the default and indicates normal priority
+
+
+
+
+ Low priority will cause the load operation to wait until all readers of the table
+ have finished. This only affects storage engines that use only table-level locking
+ such as MyISAM, Memory, and Merge.
+
+
+
+
+ Concurrent priority is only relevant for MyISAM tables and signals that if the table
+ has no free blocks in the middle that other readers can retrieve data from the table
+ while the load operation is happening.
+
+
+
+
+ Represents the behavior when conflicts arise during bulk loading operations.
+
+
+
+
+ This is the default and indicates normal operation. In the event of a LOCAL load, this
+ is the same as ignore. When the data file is on the server, then a key conflict will
+ cause an error to be thrown and the rest of the data file ignored.
+
+
+
+
+ Replace column values when a key conflict occurs.
+
+
+
+
+ Ignore any rows where the primary key conflicts.
+
+
+
+
+ Summary description for CharSetMap.
+
+
+
+
+ Returns the text encoding for a given MySQL character set name
+
+ Name of the character set to get the encoding for
+ Encoding object for the given character set name
+
+
+
+ Initializes the mapping.
+
+
+
+
+ Represents a character set object.
+
+
+
+
+ Summary description for API.
+
+
+
+
+ Summary description for CompressedStream.
+
+
+
+
+ Summary description for Crypt.
+
+
+
+
+ Simple XOR scramble
+
+ Source array
+ Index inside source array
+ Destination array
+ Index inside destination array
+ Password used to xor the bits
+ Number of bytes to scramble
+
+
+
+ Returns a byte array containing the proper encryption of the
+ given password/seed according to the new 4.1.1 authentication scheme.
+
+
+
+
+
+
+
+ Encrypts a password using the MySql encryption scheme
+
+ The password to encrypt
+ The encryption seed the server gave us
+ Indicates if we should use the old or new encryption scheme
+
+
+
+
+ Hashes a password using the algorithm from Monty's code.
+ The first element in the return is the result of the "old" hash.
+ The second element is the rest of the "new" hash.
+
+ Password to be hashed
+ Two element array containing the hashed values
+
+
+
+ Summary description for BaseDriver.
+
+
+
+
+ For pooled connections, time when the driver was
+ put into idle queue
+
+
+
+
+ Loads the properties from the connected server into a hashtable
+
+ The connection to be used.
+ Boolean that indicates if the function will be executed asynchronously.
+ The cancellation token.
+
+
+
+
+ Loads all the current character set names and ids for this server
+ into the charSets hashtable
+
+
+
+
+ The exception that is thrown when MySQL returns an error. This class cannot be inherited.
+
+
+
+ This class is created whenever the MySQL Data Provider encounters an error generated from the server.
+
+
+ Any open connections are not automatically closed when an exception is thrown. If
+ the client application determines that the exception is fatal, it should close any open
+ objects or objects.
+
+
+
+
+
+ Gets a number that identifies the type of error.
+
+
+
+
+ True if this exception was fatal and cause the closing of the connection, false otherwise.
+
+
+
+
+ Gets the SQL state.
+
+
+
+
+ Gets an integer that representes the MySQL error code.
+
+
+
+
+ Summary description for Field.
+
+
+
+
+ Automatically generates single-table commands used to reconcile changes made to a with the associated MySQL database.
+ This class cannot be inherited.
+
+
+
+ The does not automatically generate the SQL statements required to
+ reconcile changes made to a with the associated instance of MySQL.
+ However, you can create a object to automatically generate SQL statements for
+ single-table updates if you set the property
+ of the . Then, any additional SQL statements that you do not set are generated by the
+ .
+
+
+ The registers itself as a listener for RowUpdating
+ events whenever you set the property. You can only associate one
+ or object with each other at one time.
+
+
+ To generate INSERT, UPDATE, or DELETE statements, the uses the
+ property to retrieve a required set of metadata automatically. If you change
+ the after the metadata has is retrieved (for example, after the first update), you
+ should call the method to update the metadata.
+
+
+ The must also return at least one primary key or unique
+ column. If none are present, an exception is generated,
+ and the commands are not generated.
+
+
+ The also uses the ,
+ , and
+ properties referenced by the . The user should call
+ if any of these properties are modified, or if the
+ itself is replaced. Otherwise the ,
+ , and properties retain
+ their previous values.
+
+
+ If you call , the is disassociated
+ from the , and the generated commands are no longer used.
+
+
+
+ The following example uses the , along
+ and , to
+ select rows from a data source. The example is passed an initialized
+ , a connection string, a
+ query string that is a SQL SELECT statement, and a string that is the
+ name of the database table. The example then creates a .
+
+ public static DataSet SelectRows(string myConnection, string mySelectQuery, string myTableName)
+ {
+ MySqlConnection myConn = new MySqlConnection(myConnection);
+ MySqlDataAdapter myDataAdapter = new MySqlDataAdapter();
+ myDataAdapter.SelectCommand = new MySqlCommand(mySelectQuery, myConn);
+ MySqlCommandBuilder cb = new MySqlCommandBuilder(myDataAdapter);
+
+ myConn.Open();
+
+ DataSet ds = new DataSet();
+ myDataAdapter.Fill(ds, myTableName);
+
+ ///code to modify data in DataSet here
+ ///Without the MySqlCommandBuilder this line would fail
+ myDataAdapter.Update(ds, myTableName);
+ myConn.Close();
+ return ds;
+ }
+
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the associated object.
+
+ The to use.
+
+
+ The registers itself as a listener for
+ events that are generated by the
+ specified in this property.
+
+
+ When you create a new instance , any existing
+ associated with this is released.
+
+
+
+
+
+ Gets or sets a object for which SQL statements are automatically generated.
+
+
+ A object.
+
+
+
+ The registers itself as a listener for
+ events that are generated by the
+ specified in this property.
+
+
+ When you create a new instance , any existing
+ associated with this
+ is released.
+
+
+
+
+
+ Retrieves parameter information from the stored procedure specified in the
+ and populates the Parameters collection of the specified object.
+ This method is not currently supported since stored procedures are not available in MySQL.
+
+ The referencing the stored
+ procedure from which the parameter information is to be derived. The derived parameters are added to the Parameters collection of the
+ .
+ The command text is not a valid stored procedure name.
+
+
+
+ Gets the delete command.
+
+ The object required to perform deletions.
+
+
+
+ Gets the update command.
+
+ The object required to perform updates.
+
+
+
+ Gets the insert command.
+
+ The object required to perform inserts.
+
+
+
+ Given an unquoted identifier in the correct catalog case, returns the correct quoted form of that identifier,
+ including properly escaping any embedded quotes in the identifier.
+
+ The original unquoted identifier.
+ The quoted version of the identifier. Embedded quotes within the identifier are properly escaped.
+ If the unquotedIdentifier is null.
+
+
+
+ Given a quoted identifier, returns the correct unquoted form of that identifier,
+ including properly un-escaping any embedded quotes in the identifier.
+
+ The identifier that will have its embedded quotes removed.
+ The unquoted identifier, with embedded quotes properly un-escaped.
+ If the quotedIdentifier is null.
+
+
+
+ Returns the schema table for the
+
+ The for which to retrieve the corresponding schema table.
+ A that represents the schema for the specific .
+
+
+
+ Returns the full parameter name, given the partial parameter name.
+
+ The partial name of the parameter.
+ The full parameter name corresponding to the partial parameter name requested.
+
+
+
+ Allows the provider implementation of the class to handle additional parameter properties.
+
+ A to which the additional modifications are applied.
+ The from the schema table provided by .
+ The type of command being generated; INSERT, UPDATE or DELETE.
+ true if the parameter is part of the update or delete WHERE clause,
+ false if it is part of the insert or update values.
+
+
+
+ Returns the name of the specified parameter in the format of @p#. Use when building a custom command builder.
+
+ The number to be included as part of the parameter's name.
+ The name of the parameter with the specified number appended as part of the parameter name.
+
+
+
+ Returns the placeholder for the parameter in the associated SQL statement.
+
+ The number to be included as part of the parameter's name.
+ The name of the parameter with the specified number appended.
+
+
+
+ Registers the to handle the
+ event for a .
+
+
+
+
+
+ Represents a set of data commands and a database connection that are used to fill a dataset and update a MySQL database.
+ This class cannot be inherited.
+
+
+
+ The , serves as a bridge between a
+ and MySQL for retrieving and saving data. The provides this
+ bridge by mapping , which changes the data in the
+ to match the data in the data source, and ,
+ which changes the data in the data source to match the data in the ,
+ using the appropriate SQL statements against the data source.
+
+
+ When the fills a , it will create the necessary
+ tables and columns for the returned data if they do not already exist. However, primary
+ key information will not be included in the implicitly created schema unless the
+ property is set to .
+ You may also have the create the schema of the ,
+ including primary key information, before filling it with data using .
+
+
+ is used in conjunction with
+ and to increase performance when connecting to a MySQL database.
+
+
+ The also includes the ,
+ , ,
+ , and
+ properties to facilitate the loading and updating of data.
+
+
+ When an instance of is created, the read/write properties
+ are set to initial values. For a list of these values, see the
+ constructor.
+
+
+ Please be aware that the class allows only
+ Int16, Int32, and Int64 to have the AutoIncrement property set.
+ If you plan to use autoincremement columns with MySQL, you should consider
+ using signed integer columns.
+
+
+
+ The following example creates a and a .
+ The is opened and set as the for the
+ . The example then calls , and closes
+ the connection. To accomplish this, the is
+ passed a connection string and a query string that is a SQL INSERT
+ statement.
+
+ public DataSet SelectRows(DataSet dataset,string connection,string query)
+ {
+ MySqlConnection conn = new MySqlConnection(connection);
+ MySqlDataAdapter adapter = new MySqlDataAdapter();
+ adapter.SelectCommand = new MySqlCommand(query, conn);
+ adapter.Fill(dataset);
+ return dataset;
+ }
+
+
+
+
+
+ Occurs during Update before a command is executed against the data source. The attempt to update is made, so the event fires.
+
+
+
+
+ Occurs during Update after a command is executed against the data source. The attempt to update is made, so the event fires.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+ When an instance of is created,
+ the following read/write properties are set to the following initial
+ values.
+
+
+
+ Properties
+ Initial Value
+
+ -
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+ You can change the value of any of these properties through a separate call to the property.
+
+
+
+
+
+ Initializes a new instance of the class with
+ the specified as the
+ property.
+
+
+ that is a SQL SELECT statement or stored procedure and is set
+ as the property of the .
+
+
+
+
+ Initializes a new instance of the class with
+ a and a object.
+
+
+ A String that is a SQL SELECT statement or stored procedure to be used by
+ the property of the .
+
+
+ A that represents the connection.
+
+
+
+ This implementation of the opens and closes a
+ if it is not already open. This can be useful in a an application that must call the
+ method for two or more MySqlDataAdapter objects.
+ If the MySqlConnection is already open, you must explicitly call
+ or to close it.
+
+
+
+
+
+ Initializes a new instance of the class with
+ a and a connection string.
+
+
+ A that is a SQL SELECT statement or stored procedure to
+ be used by the property of the .
+
+ The connection string
+
+
+
+ Gets or sets a SQL statement or stored procedure used to delete records from the data set.
+
+
+ A used during to delete records in the
+ database that correspond to deleted rows in the .
+
+
+
+ During , if this property is not set and primary key information
+ is present in the , the can be generated
+ automatically if you set the property and use the
+ . Then, any additional commands that you do not set are
+ generated by the . This generation logic requires key column
+ information to be present in the .
+
+
+ When is assigned to a previously created ,
+ the is not cloned. The maintains a reference
+ to the previously created object.
+
+
+
+
+
+ Gets or sets a SQL statement or stored procedure used to insert records into the data set.
+
+
+ A used during to insert records into the
+ database that correspond to new rows in the .
+
+
+
+ During , if this property is not set and primary key information
+ is present in the , the InsertCommand can be generated
+ automatically if you set the property and use the
+ . Then, any additional commands that you do not set are
+ generated by the MySqlCommandBuilder. This generation logic requires key column
+ information to be present in the DataSet.
+
+
+ When InsertCommand is assigned to a previously created ,
+ the is not cloned. The InsertCommand maintains a reference
+ to the previously created object.
+
+
+ If execution of this command returns rows, these rows may be added to the DataSet
+ depending on how you set the property of the object.
+
+
+
+
+
+ Gets or sets a SQL statement or stored procedure used to select records in the data source.
+
+
+ A used during to select records from the
+ database for placement in the .
+
+
+
+ When is assigned to a previously created ,
+ the is not cloned. The maintains a reference to the
+ previously created object.
+
+
+ If the does not return any rows, no tables are added to the
+ , and no exception is raised.
+
+
+
+
+
+ Gets or sets a SQL statement or stored procedure used to updated records in the data source.
+
+
+ A used during to update records in the
+ database with data from the .
+
+
+
+ During , if this property is not set and primary key information
+ is present in the , the can be generated
+ automatically if you set the property and use the
+ . Then, any additional commands that you do not set are
+ generated by the . This generation logic requires key column
+ information to be present in the DataSet.
+
+
+ When is assigned to a previously created ,
+ the is not cloned. The maintains a reference
+ to the previously created object.
+
+
+ If execution of this command returns rows, these rows may be merged with the DataSet
+ depending on how you set the property of the object.
+
+
+
+
+
+ Open connection if it was closed.
+ Necessary to workaround "connection must be open and valid" error
+ with batched updates.
+
+ Row state
+ list of opened connections
+ If connection is opened by this function, the list is updated
+
+ true if connection was opened
+
+
+
+ Gets or sets a value that enables or disables batch processing support,
+ and specifies the number of commands that can be executed in a batch.
+
+
+ Returns the number of rows to process for each batch.
+
+
+ Value is
+ Effect
+
+ -
+
+ 0
+
+
+ There is no limit on the batch size.
+
+
+ -
+
+ 1
+
+
+ Disables batch updating.
+
+
+ -
+
+ > 1
+
+
+ Changes are sent using batches of operations at a time.
+
+
+
+
+ When setting this to a value other than 1, all the commands associated with the
+ must have their property set to None or OutputParameters. An exception will be thrown otherwise.
+
+
+
+
+
+ Initializes batching for the .
+
+
+
+
+ Adds a to the current batch.
+
+ The to add to the batch.
+ The number of commands in the batch before adding the .
+
+
+
+ Executes the current batch.
+
+ The return value from the last command in the batch.
+
+
+
+ Removes all objects from the batch.
+
+
+
+
+ Ends batching for the .
+
+
+
+
+ Returns a System.Data.IDataParameter from one of the commands in the current batch.
+
+ The index of the command to retrieve the parameter from.
+ The index of the parameter within the command.
+ The specified.
+
+
+
+ Overridden. See .
+
+
+
+
+
+
+
+
+
+ Initializes a new instance of the class.
+
+ The that updates the data source.
+ The to execute during the .
+ Whether the command is an UPDATE, INSERT, DELETE, or SELECT statement.
+ A object.
+
+
+
+
+ Overridden. Raises the RowUpdating event.
+
+ A MySqlRowUpdatingEventArgs that contains the event data.
+
+
+
+ Overridden. Raises the RowUpdated event.
+
+ A MySqlRowUpdatedEventArgs that contains the event data.
+
+
+
+ Asynchronous version of the method.
+
+ The to fill records with.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill records with.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The name of the to use for table mapping.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The name of the to use for table mapping.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The name of the source table to use for table mapping.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The name of the source table to use for table mapping.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ An instance of .
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ An instance of .
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The start record.
+ The max number of affected records.
+ The s to fill with records.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The start record.
+ The max number of affected records.
+ The cancellation token.
+ The s to fill with records.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The start record.
+ The max number of affected records.
+ The name of the source table to use for table mapping.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The start record.
+ The max number of affected records.
+ The name of the source table to use for table mapping.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The name of the source table to use for table mapping.
+ An instance of .
+ The start record.
+ The max number of affected records.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The name of the source table to use for table mapping.
+ An instance of .
+ The start record.
+ The max number of affected records.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The s to fill with records.
+ The start record.
+ The max number of affected records.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The number of rows successfully added to or refreshed in the s.
+
+
+
+ Asynchronous version of the method.
+
+ The s to fill with records.
+ The start record.
+ The max number of affected records.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the s.
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The start record.
+ The max number of affected records.
+ The name of the source table to use for table mapping.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ The to fill with records.
+ The start record.
+ The max number of affected records.
+ The name of the source table to use for table mapping.
+ The SQL SELECT statement used to retrieve rows from the data source.
+ One of the values.
+ The cancellation token.
+ The number of rows successfully added to or refreshed in the .
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ Source table to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ Source table to use.
+ to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ Source table to use.
+ DataReader to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ Source table to use.
+ to use.
+ to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ DBCommand to use.
+ Source table to use.
+ Command Behavior
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Schema type to use.
+ DBCommand to use.
+ Source table to use.
+ Command Behavior
+ to use.
+ []
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ DataTable
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ to use.
+
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ DataReader to use.
+
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ DataReader to use.
+ to use.
+
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ DBCommand to use.
+ Command Behavior
+
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ Schema type to use.
+ DBCommand to use.
+ Command behavior.
+ to use.
+
+
+
+
+ Asynchronous version of the method.
+
+ DataRow[] to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataRow[] to use.
+ to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataTable to use.
+ to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataRow[] to use.
+ Data Table Mapping
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataRow[] to use.
+ Data Table Mapping
+ to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Source table to use.
+ The number of rows successfully updated from the .
+
+
+
+ Asynchronous version of the method.
+
+ DataSet to use.
+ Source table to use.
+ to use.
+ The number of rows successfully updated from the .
+
+
+
+ Represents the method that will handle the event of a .
+
+
+
+
+ Represents the method that will handle the event of a .
+
+
+
+
+ Provides data for the RowUpdating event. This class cannot be inherited.
+
+
+
+
+ Initializes a new instance of the MySqlRowUpdatingEventArgs class.
+
+ The to
+ .
+ The to execute during .
+ One of the values that specifies the type of query executed.
+ The sent through an .
+
+
+
+ Gets or sets the MySqlCommand to execute when performing the Update.
+
+
+
+
+ Provides data for the RowUpdated event. This class cannot be inherited.
+
+
+
+
+ Initializes a new instance of the MySqlRowUpdatedEventArgs class.
+
+ The sent through an .
+ The executed when is called.
+ One of the values that specifies the type of query executed.
+ The sent through an .
+
+
+
+ Gets or sets the MySqlCommand executed when Update is called.
+
+
+
+
+ Enables the provider to help ensure that a user has a security level adequate for accessing data.
+
+
+
+
+ Adds a new connection string with set of restricted keywords to the MySqlClientPermission object
+
+ Settings to be used for the connection
+ Keywords to define the restrictions
+ KeyRestrictionBehavior to be used
+
+
+
+ Returns MySqlClientPermission as an IPermission
+
+
+
+
+
+ Associates a security action with a custom security attribute.
+
+
+
+
+ Represents a section within a configuration file.
+
+
+
+
+ Gets the MySQL configuations associated to the current configuration.
+
+
+
+
+ Gets a collection of the exception interceptors available in the current configuration.
+
+
+
+
+ Gets a collection of the command interceptors available in the current configuration.
+
+
+
+
+ Gets a collection of the authentication plugins available in the current configuration.
+
+
+
+
+ Gets or sets the replication configurations.
+
+
+
+
+ Defines the configurations allowed for an authentication plugin.
+
+
+
+
+ Gets or sets the name of the authentication plugin.
+
+
+
+
+ Gets or sets the type of the authentication plugin.
+
+
+
+
+ Defines the configurations allowed for an interceptor.
+
+
+
+
+ Gets or sets the name of the interceptor.
+
+
+
+
+ Gets or sets the type of the interceptor.
+
+
+
+
+ Represents a generic configuration element.
+
+
+
+
+
+ Gets an enumerator that iterates through the returned list.
+
+ An enumerator that iterates through the returned list.
+
+
+
+ Helper class that makes it easier to work with the provider.
+
+
+
+
+ Asynchronous version of ExecuteDataRow.
+
+ The settings to be used for the connection.
+ The command to execute.
+ The parameters to use for the command.
+ The DataRow containing the first row of the resultset.
+
+
+
+ Asynchronous version of ExecuteDataRow.
+
+ The settings to be used for the connection.
+ The command to execute.
+ The cancellation token.
+ The parameters to use for the command.
+ The DataRow containing the first row of the resultset.
+
+
+
+ Executes a single SQL command and returns the first row of the resultset. A new MySqlConnection object
+ is created, opened, and closed during this method.
+
+ Settings to be used for the connection
+ Command to execute
+ Parameters to use for the command
+ DataRow containing the first row of the resultset
+
+
+
+ Executes a single SQL command and returns the resultset in a .
+ A new MySqlConnection object is created, opened, and closed during this method.
+
+ Settings to be used for the connection
+ Command to execute
+ containing the resultset
+
+
+
+ Executes a single SQL command and returns the resultset in a .
+ A new MySqlConnection object is created, opened, and closed during this method.
+
+ Settings to be used for the connection
+ Command to execute
+ Parameters to use for the command
+ containing the resultset
+
+
+
+ Executes a single SQL command and returns the resultset in a .
+ The state of the object remains unchanged after execution
+ of this method.
+
+ object to use
+ Command to execute
+ containing the resultset
+
+
+
+ Executes a single SQL command and returns the resultset in a .
+ The state of the object remains unchanged after execution
+ of this method.
+
+ object to use
+ Command to execute
+ Parameters to use for the command
+ containing the resultset
+
+
+
+ Updates the given table with data from the given
+
+ Settings to use for the update
+ Command text to use for the update
+ containing the new data to use in the update
+ Tablename in the dataset to update
+
+
+
+ Async version of ExecuteDataset
+
+ Settings to be used for the connection
+ Command to execute
+ containing the resultset
+
+
+
+ Async version of ExecuteDataset
+
+ Settings to be used for the connection
+ Command to execute
+ Parameters to use for the command
+ containing the resultset
+
+
+
+ Async version of ExecuteDataset
+
+ object to use
+ Command to execute
+ containing the resultset
+
+
+
+ Async version of ExecuteDataset
+
+ object to use
+ Command to execute
+ Parameters to use for the command
+ containing the resultset
+
+
+
+ Async version of UpdateDataset
+
+ Settings to use for the update
+ Command text to use for the update
+ containing the new data to use in the update
+ Tablename in the dataset to update
+
+
+
+ Executes a single command against a MySQL database. The is assumed to be
+ open when the method is called and remains open after the method completes.
+
+ The object to use
+ The SQL command to be executed.
+ An array of objects to use with the command.
+ The number of affected records.
+
+
+
+ Executes a single command against a MySQL database.
+
+ to use.
+ The SQL command to be executed.
+ An array of objects to use with the command.
+ The number of affected records.
+ A new is created using the given.
+
+
+
+ Async version of ExecuteNonQuery
+
+ object to use.
+ The SQL command to be executed.
+ An array of objects to use with the command.
+ Rows affected.
+
+
+
+ Asynchronous version of the ExecuteNonQuery method.
+
+ to use.
+ The SQL command to be executed.
+ An array of objects to use with the command.
+ The number of rows affected.
+
+
+
+ Asynchronous version of the ExecuteNonQuery method.
+
+ to use.
+ The SQL command to be executed.
+ The cancellation token.
+ An array of objects to use with the command.
+ The number of rows affected.
+
+
+
+ Executes a single command against a MySQL database, possibly inside an existing transaction.
+
+ object to use for the command
+ object to use for the command
+ Command text to use
+ Array of objects to use with the command
+ True if the connection should be preserved, false if not
+ object ready to read the results of the command
+
+
+
+ Executes a single command against a MySQL database.
+
+ Settings to use for this command
+ Command text to use
+ object ready to read the results of the command
+
+
+
+ Executes a single command against a MySQL database.
+
+ object to use for the command
+ Command text to use
+ object ready to read the results of the command
+
+
+
+ Executes a single command against a MySQL database.
+
+ Settings to use for this command
+ Command text to use
+ Array of objects to use with the command
+ object ready to read the results of the command
+
+
+
+ Executes a single command against a MySQL database.
+
+ Connection to use for the command
+ Command text to use
+ Array of objects to use with the command
+ object ready to read the results of the command
+
+
+
+ Async version of ExecuteReader
+
+ object to use for the command
+ object to use for the command
+ Command text to use
+ Array of objects to use with the command
+ True if the connection should be preserved, false if not
+ object ready to read the results of the command
+
+
+
+ Async version of ExecuteReader
+
+ Settings to use for this command
+ Command text to use
+ object ready to read the results of the command
+
+
+
+ Async version of ExecuteReader
+
+ object to use for the command
+ Command text to use
+ object ready to read the results of the command
+
+
+
+ Async version of ExecuteReader
+
+ Settings to use for this command.
+ Command text to use.
+ An array of objects to use with the command.
+ object ready to read the results of the command.
+
+
+
+ Async version of ExecuteReader
+
+ Connection to use for the command.
+ Command text to use.
+ An array of objects to use with the command.
+ object ready to read the results of the command.
+
+
+
+ Execute a single command against a MySQL database.
+
+ Settings to use for the update
+ Command text to use for the update
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Execute a single command against a MySQL database.
+
+ Settings to use for the command
+ Command text to use for the command
+ Parameters to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Execute a single command against a MySQL database.
+
+ object to use
+ Command text to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Execute a single command against a MySQL database.
+
+ object to use
+ Command text to use for the command
+ Parameters to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Async version of ExecuteScalar
+
+ Settings to use for the update
+ Command text to use for the update
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Async version of ExecuteScalar
+
+ Settings to use for the command
+ Command text to use for the command
+ Parameters to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Async version of ExecuteScalar
+
+ object to use
+ Command text to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Async version of ExecuteScalar
+
+ object to use
+ Command text to use for the command
+ Parameters to use for the command
+ The first column of the first row in the result set, or a null reference if the result set is empty.
+
+
+
+ Escapes the string.
+
+ The string to escape.
+ The string with all quotes escaped.
+
+
+
+ Replaces quotes with double quotes.
+
+ The string to modidify.
+ A string containing double quotes instead of single quotes.
+
+
+
+ Represents a single(not nested) TransactionScope
+
+
+
+
+ Defines security permissions assigned to a MySQL object.
+
+
+
+
+ Creates a set of permissions.
+
+ A flag indicating if the reflection permission should be included.
+ A object representing a collection of permissions.
+
+
+
+ BaseCommandInterceptor is the base class that should be used for all userland
+ command interceptors
+
+
+
+
+ Gets the active connection.
+
+
+
+
+ Executes an SQL statements that returns a scalar value such as a calculation.
+
+ The SQL statement to execute.
+ A scalar value that represents the result returned by the execution of the SQL statement.
+ false.
+ This method is intended to be overriden.
+
+
+
+ Executes an SQL statement that returns the number of affected rows.
+
+ The SQL statement to execute.
+ The number of affected rows.
+ false.
+ This method is intended to be overriden.
+
+
+
+ Executes an SQL statement that will return a resultset.
+
+ The SQL statement to execute.
+ A value that describes the results of the query and its effect on the database.
+ A object containing the result of the statement execution.
+ false.
+ This method is intended to be overriden.
+
+
+
+ Sets the active connection.
+
+ The active connection.
+
+
+
+ CommandInterceptor is the "manager" class that keeps the list of registered interceptors
+ for the given connection.
+
+
+
+
+ BaseExceptionInterceptor is the base class that should be used for all userland
+ exception interceptors.
+
+
+
+
+ Returns the received exception.
+
+ The exception to be returned.
+ The exception originally received.
+
+
+
+ Gets the active connection.
+
+
+
+
+ Initilizes this object by setting the active connection.
+
+ The connection to become active.
+
+
+
+ StandardExceptionInterceptor is the standard interceptor that simply returns the exception.
+ It is the default action.
+
+
+
+
+ Returns the received exception, which is the default action
+
+ The exception to be returned.
+ The exception originally received.
+
+
+
+ ExceptionInterceptor is the "manager" class that keeps the list of registered interceptors
+ for the given connection.
+
+
+
+
+ Interceptor is the base class for the "manager" classes such as ExceptionInterceptor,
+ CommandInterceptor, etc
+
+
+
+
+ Return schema information about procedures and functions
+ Restrictions supported are:
+ schema, name, type
+
+
+ Boolean that indicates if the function will be executed asynchronously.
+ The cancellation token.
+
+
+
+ Return schema information about parameters for procedures and functions
+ Restrictions supported are:
+ schema, name, type, parameter name
+
+
+
+
+ Represents a query attribute to a .
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class with the attribute name and its value.
+
+ Name of the attribute.
+ Value of the attribute.
+
+
+
+ Name of the query attribute.
+
+
+
+
+ Value of the query attribute.
+
+
+
+
+ Gets or sets the of the attribute.
+
+
+
+
+ Sets the MySqlDbType from the Value
+
+
+
+
+ Gets the value for the attribute type.
+
+
+
+
+ Serialize the value of the query attribute.
+
+
+
+
+ Clones this object.
+
+ An object that is a clone of this object.
+
+
+
+ Represents a collection of query attributes relevant to a .
+
+
+
+
+ Gets the at the specified index.
+
+
+
+
+ Gets the number of objects in the collection.
+
+
+
+
+ Adds the specified object to the .
+
+ object to add.
+
+
+
+ Adds a query attribute and its value.
+
+ Name of the query attribute.
+ Value of the query attribute.
+
+
+
+ Removes all items from the collection.
+
+
+
+
+ Returns an enumerator that iterates through the .
+
+
+
+
+ Abstract class that provides common functionality for connection options that apply for all protocols.
+
+
+
+
+ Readonly field containing a collection of protocol shared connection options.
+
+
+
+
+ Gets or sets a dictionary representing key-value pairs for each connection option.
+
+
+
+
+ Gets or sets the name of the server.
+
+ The server.
+
+ If this property is not set, then the provider will attempt to connect tolocalhost
+ even though this property will return String.Empty.
+
+
+
+ Gets or sets the name of the database for the initial connection.
+
+ There is no default for this property and, if not set, the connection will not have a current database.
+
+
+
+
+ Gets or sets the protocol that should be used for communicating
+ with MySQL.
+
+
+
+
+ Gets or sets the port number that is used when the socket
+ protocol is being used.
+
+
+
+
+ Gets or sets a boolean value that indicates whether this connection
+ should resolve DNS SRV records.
+
+
+
+
+ Gets or sets the user ID that should be used to connect with.
+
+
+
+
+ Gets or sets the password that should be used to make a connection.
+
+
+
+
+ Gets or sets the password for a second authentication that should be used to make a connection.
+
+
+
+
+ Gets or sets the password for a third authentication that should be used to make a connection.
+
+
+
+
+ Gets or sets the path to the certificate file to be used.
+
+
+
+
+ Gets or sets the password to be used in conjunction with the certificate file.
+
+
+
+
+ Gets or sets the location to a personal store where a certificate is held.
+
+
+
+
+ Gets or sets a certificate thumbprint to ensure correct identification of a certificate contained within a personal store.
+
+
+
+
+ Indicates whether to use SSL connections and how to handle server certificate errors.
+
+
+
+
+ Sets the TLS versions to use in a SSL connection to the server.
+
+
+ Tls version=TLSv1.2,TLSv1.3;
+
+
+
+
+ Gets or sets the path to a local key file in PEM format to use for establishing an encrypted connection.
+
+
+
+
+ Gets or sets the path to a local certificate file in PEM format to use for establishing an encrypted connection.
+
+
+
+
+ Gets or sets the idle connection time(seconds) for TCP connections.
+
+
+
+
+ Gets or sets the character set that should be used for sending queries to the server.
+
+
+
+
+ Analyzes the connection string for potential duplicated or invalid connection options.
+
+ Connection string.
+ Flag that indicates if the connection is using X Protocol.
+ Flag that indicates if the default port is used.
+ Flag that indicates if the connection string has been analyzed.
+
+
+
+ Represents a set of methods for creating instances of the MySQL client implementation of the data source classes.
+
+
+
+
+ Gets an instance of the .
+ This can be used to retrieve strongly typed data objects.
+
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbCommand.
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbConnection.
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbParameter.
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbConnectionStringBuilder.
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbCommandBuilder.
+
+
+
+ Returns a strongly typed instance.
+
+ A new strongly typed instance of DbDataAdapter.
+
+
+
+ Provide a simple caching layer
+
+
+
+
+ Represents a SQL statement to execute against a MySQL database. This class cannot be inherited.
+
+
+
+ You can reset the property and reuse the
+ object. However, you must close the object before you can execute a new or previous command.
+
+
+ If an exception of type is generated by the method executing ,
+ the instance remains open. It is the responsibility of the programmer to close the connection.
+
+
+ You can read more about it here.
+
+
+ Using the '@' symbol for paramters is now the preferred approach although the old pattern of using
+ '?' is still supported. Please be aware that using '@' can cause conflicts when user variables
+ are also used. For more information, see the documentation on the AllowUserVariables connection string option.
+
+
+
+
+
+ Initializes a new instance of the MySqlCommand class.
+
+
+ The base constructor initializes all fields to their default values.
+
+
+
+
+ Initializes a new instance of the class with the text of the query.
+
+ The text of the query.
+
+
+
+ Initializes a new instance of the class with the text of the query and a .
+
+ The text of the query.
+ A that represents the connection to an instance of MySQL Server.
+
+
+
+ Initializes a new instance of the class with the text of the query,
+ a , and the .
+
+ The text of the query.
+ A that represents the connection to an instance of MySQL Server.
+ The in which the executes.
+
+
+
+ Provides the ID of the last inserted row.
+ ID of the last inserted row. -1 if none exists.
+
+ An important point to remember is that this property can be used in batch SQL scenarios but it's important to remember that it will
+ only reflect the insert ID from the last insert statement in the batch. This property can also be used when the batch includes select statements
+ and ExecuteReader is used. This property can be consulted during result set processing.
+
+
+
+
+ Gets or sets the SQL statement to execute at the data source.
+
+ The SQL statement or stored procedure to execute. The default is an empty string.
+
+ You can read more about it here.
+
+
+
+
+ Gets or sets the wait time before terminating the attempt to execute a command
+ and generating an error.
+
+ The time (in seconds) to wait for the command to execute. The default is 30 seconds.
+
+ CommandTimeout is dependent on the ability of MySQL to cancel an executing query.
+
+
+
+
+ Gets or sets a value indicating how the property is to be interpreted.
+
+
+ One of the values.
+ The default is .
+
+
+ You can read more about it here.
+
+
+
+
+ Gets a boolean value that indicates whether the method has been called.
+
+ True if it is Prepared; otherwise, false.
+
+
+
+ Gets or sets the object used by this instance of the .
+
+
+ The connection to a data source. The default value is a null reference.
+
+
+
+
+ Gets the object.
+
+
+ The parameters of the SQL statement or stored procedure. The default is an empty collection.
+
+
+ Connector/NET does not support unnamed parameters. Every parameter added to the collection must
+ have an associated name.
+ You can read more about it here.
+ Parameters can be used along with . There are no restrictions in this regard.
+
+
+
+
+ Gets the object.
+
+
+ The query attributes defined for the statement. The default is an empty collection.
+
+
+ Connector/NET does not support unnamed query attributes. Every query attribute added to the collection must
+ have an associated name.
+ You can read more about it here.
+ Query Attributes can be used along with . There are no restrictions in this regard.
+
+
+
+
+ Gets or sets the instance of within which executes.
+
+
+ The . The default value is a null reference (Nothing in Visual Basic).
+
+
+ You cannot set the property if it is already set to a
+ specific value, and the command is in the process of executing. If you set the
+ transaction to use a object that is not connected
+ to the same as the object,
+ an exception will be thrown the next time you attempt to execute a statement.
+
+
+
+
+ Gets or sets a value that indicates whether caching is enabled.
+
+ True if it is enabled; otherwise, false.
+
+
+
+ Gets or sets the seconds for how long a TableDirect result should be cached.
+
+ Number of seconds.
+
+
+
+ Gets or sets how command results are applied to the
+ when used by the method of the .
+
+
+ One of the values.
+
+
+
+ The default value is
+ Both unless the command is automatically generated (as in the case of the
+ ), in which case the default is None.
+
+
+
+
+
+ Gets or sets a value indicating whether the command object should be visible in a Windows Form Designer control.
+
+ True if it should be visible; otherwise, false.
+
+
+
+ Gets or sets the used by this .
+
+ The connection.
+
+
+
+ Gets the collection of objects.
+
+ The collection.
+
+
+
+ Gets or sets the within which this object executes.
+
+ The transaction.
+
+
+
+ Attempts to cancel the execution of a currently active command
+
+
+
+
+ Creates a new instance of a object.
+
+
+ This method is a strongly-typed version of .
+
+ A object.
+
+
+
+ Check the connection to make sure
+ - it is open
+ - it is not currently being used by a reader
+ - and we have the right version of MySQL for the requested command type
+
+
+
+
+ Executes a SQL statement against the connection and returns the number of rows affected.
+
+ Number of rows affected
+
+ You can use to perform any type of database operation,
+ however any resultsets returned will not be available. Any output parameters
+ used in calling a stored procedure will be populated with data and can be
+ retrieved after execution is complete.
+ For UPDATE, INSERT, and DELETE statements, the return value is the number
+ of rows affected by the command. For all other types of statements, the return
+ value is -1.
+
+
+
+
+ Asynchronous version of .
+
+ The cancellation token.
+ A task representing the asynchronous operation.
+
+
+
+ Reset reader to null, to avoid "There is already an open data reader"
+ on the next ExecuteReader(). Used in error handling scenarios.
+
+
+
+
+ Reset SQL_SELECT_LIMIT that could have been modified by CommandBehavior.
+
+
+
+
+ Sends the value to
+ and builds a object.
+
+ A object.
+
+
+ When the property is set to StoredProcedure,
+ the property should be set to the name of the stored
+ procedure. The command executes this stored procedure when you call
+ ExecuteReader.
+
+
+ While is in use, the associated
+ instance of is busy serving it
+ and no other operations can be performed on , other than closing it.
+ This is the case until the method of is called.
+
+
+
+
+
+ Sends the to the Connection,
+ and builds a using one of the values.
+
+ One of the values.
+
+
+ When the property is set to StoredProcedure,
+ the property should be set to the name of the stored
+ procedure. The command executes this stored procedure when you call
+ ExecuteReader.
+
+
+ If the object is created with CommandBehavior set to
+ CloseConnection, closing the instance closes the connection
+ automatically.
+
+
+ When calling ExecuteReader with the SingleRow behavior, you should be aware that using a limit
+ clause in your SQL will cause all rows (up to the limit given) to be retrieved by the client. The
+ method will still return false after the first row but pulling all rows of data
+ into the client will have a performance impact. If the limit clause is not necessary, it should
+ be avoided.
+
+
+
+ A object.
+
+
+
+
+ Asynchronous version of .
+
+ One of the values.
+ A task representing the asynchronous operation.
+
+
+
+ Asynchronous version of with a cancellation token.
+
+ One of the values.
+ The cancellation token.
+ A task representing the asynchronous operation.
+
+
+
+ Executes the query, and returns the first column of the first row in the
+ result set returned by the query. Extra columns or rows are ignored.
+
+
+ The first column of the first row in the result set, or a null reference if the
+ result set is empty
+
+
+
+ Use the ExecuteScalar method to retrieve a single value (for example,
+ an aggregate value) from a database. This requires less code than using the
+ method, and then performing the operations necessary
+ to generate the single value using the data returned by a
+
+
+
+
+
+ Asynchronous version of .
+
+ The cancellation token.
+ A task representing the asynchronous operation.
+
+
+
+ Creates a prepared version of the command on an instance of MySQL Server.
+
+
+
+
+ Asynchronously creates a prepared version of the command on an instance of MySQL Server.
+
+
+
+
+ Creates a clone of this object. CommandText, Connection, and Transaction properties
+ are included as well as the entire parameter and the arribute list.
+
+ The cloned object.
+
+
+
+ Initiates the asynchronous execution of the SQL statement or stored procedure
+ that is described by this , and retrieves one or more
+ result sets from the server.
+
+ An that can be used to poll, wait for results,
+ or both; this value is also needed when invoking EndExecuteReader,
+ which returns a instance that can be used to retrieve
+ the returned rows.
+
+
+
+ Initiates the asynchronous execution of the SQL statement or stored procedure
+ that is described by this using one of the
+ CommandBehavior values.
+
+ One of the values, indicating
+ options for statement execution and data retrieval.
+ An that can be used to poll, wait for results,
+ or both; this value is also needed when invoking EndExecuteReader,
+ which returns a instance that can be used to retrieve
+ the returned rows.
+
+
+
+ Finishes asynchronous execution of a SQL statement, returning the requested
+ .
+
+ The returned by the call to
+ .
+ A MySqlDataReader object that can be used to retrieve the requested rows.
+
+
+
+ Initiates the asynchronous execution of the SQL statement or stored procedure
+ that is described by this .
+
+
+ An delegate that is invoked when the command's
+ execution has completed. Pass a null reference to indicate that no callback is required.
+ A user-defined state object that is passed to the
+ callback procedure. Retrieve this object from within the callback procedure
+ using the property.
+ An that can be used to poll or wait for results,
+ or both; this value is also needed when invoking ,
+ which returns the number of affected rows.
+
+
+
+ Initiates the asynchronous execution of the SQL statement or stored procedure
+ that is described by this .
+
+ An that can be used to poll or wait for results,
+ or both; this value is also needed when invoking ,
+ which returns the number of affected rows.
+
+
+
+ Finishes asynchronous execution of a SQL statement.
+
+ The returned by the call
+ to .
+
+
+
+
+ Releases the resources used by the
+
+
+
+
+ Releases the resources used by the
+
+
+
+
+ Represents a connection to a MySQL database. This class cannot be inherited.
+
+
+
+ A object represents a session to a MySQL
+ data source. When you create an instance of , all
+ properties are set to their initial values.
+
+
+ If the goes out of scope, it is not closed. Therefore,
+ you must explicitly close the connection by calling
+ or .
+
+
+
+
+
+ Occurs when FIDO authentication requests to perform gesture action on a device.
+
+
+
+
+ Occurs when WebAuthn authentication makes a request to perform the gesture action on a device.
+
+
+
+
+ Occurs when MySQL returns warnings as a result of executing a command or query.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ You can read more about it here.
+
+
+
+
+ Initializes a new instance of the class when given a string containing the connection string.
+
+
+ You can read more about it here.
+
+ The connection properties used to open the MySQL database.
+
+
+
+
+ Determines whether the connection is a clone of other connection.
+
+
+
+
+ Returns the ID of the server thread this connection is executing on.
+
+
+
+
+ Gets the name of the MySQL server to which to connect.
+
+
+
+
+ Gets the time to wait while trying to establish a connection before terminating the attempt and generating an error.
+
+
+ A value of 0 indicates no limit, and should be avoided in a call to
+ because an attempt to connect
+ will wait indefinitely.
+
+ The value set is less than 0.
+
+
+ Gets the name of the current database or the database to be used after a connection is opened.
+ The name of the current database or the name of the database to be used after a connection is opened.
+ The default value is an empty string.
+
+
+ The property does not update dynamically.
+ If you change the current database using a SQL statement, then this property
+ may reflect the wrong value. If you change the current database using the
+ method, this property is updated to reflect the new database.
+
+
+
+
+
+ Indicates if this connection should use compression when communicating with the server.
+
+
+
+ Gets the current state of the connection.
+
+ A bitwise combination of the values. The default is .
+
+
+ The allowed state changes are:
+
+ -
+ From to ,
+ using the method of the connection object.
+
+ -
+ From Open to Closed, using either the Close method or the Dispose method of the connection object.
+
+
+
+
+
+ Gets a string containing the version of the MySQL server to which the client is connected.
+ The version of the instance of MySQL.
+ The connection is closed.
+
+
+
+ Gets or sets the string used to connect to a MySQL database.
+
+
+ You can read more about it here.
+
+
+
+
+ Gets the instance of the
+
+
+
+
+ Gets a boolean value that indicates whether the password associated to the connection is expired.
+
+
+
+
+ Gets a boolean value that indicates whether the connection string has been analyzed or not.
+
+
+
+
+ Creates and returns a System.Data.Common.DbCommand object associated with the current connection.
+
+ A object.
+
+
+
+ Releases the resources used by the
+
+
+
+
+ Starts a database transaction.
+
+ Specifies the for the transaction.
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+
+ Begins a database transaction.
+
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+
+ Starts a database transaction.
+
+ Specifies the for the transaction.
+ The scope of the transaction.
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+
+ Asynchronous version of .
+
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+
+ Asynchronous version of .
+
+ A token to cancel the asynchronous operation.
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+
+ Asynchronous version of .
+
+ Specifies the for the transaction.
+ The cancellation token.
+ A representing the new transaction.
+ Parallel transactions are not supported.
+
+
+ Changes the current database for an open .
+ The name of the database to use.
+
+
+ The value supplied in the databaseName parameter must be a valid database
+ name. The databaseName parameter cannot contain a null value, an empty
+ string, or a string with only blank characters.
+
+
+ When you are using connection pooling against MySQL, and you close
+ the connection, it is returned to the connection pool. The next time the
+ connection is retrieved from the pool, the reset connection request
+ executes before the user performs any operations.
+
+
+ The database name is not valid.
+ The connection is not open.
+ Cannot change the database.
+
+
+
+ Asynchronous version of the method.
+
+ The name of the database to use.
+ The cancellation token.
+ A task representing the asynchronous operation.
+
+
+
+ Pings the server.
+
+ true if the ping was successful; otherwise, false.
+
+
+
+ Pings the server.
+
+ true if the ping was successful; otherwise, false.
+
+
+ Opens a database connection with the property settings specified by the .
+ Cannot open a connection without specifying a data source or server.
+ A connection-level error occurred while opening the connection.
+
+
+ The draws an open connection from the connection pool if one is available.
+ Otherwise, it establishes a new connection to an instance of MySQL.
+
+
+
+
+
+ Creates and returns a object associated with the .
+
+ A object.
+
+
+ Closes the connection to the database. This is the preferred method of closing any open connection.
+
+
+ The method rolls back any pending transactions. It then releases
+ the connection to the connection pool, or closes the connection if connection
+ pooling is disabled.
+
+
+ An application can call more than one time. No exception is
+ generated.
+
+
+
+
+
+ Asynchronous version of the method.
+
+
+
+
+ Asynchronous version of the method.
+
+
+
+
+ Cancels the query after the specified time interval.
+
+ The length of time (in seconds) to wait for the cancellation of the command execution.
+
+
+
+ Asynchronous version of the method.
+
+ The length of time (in seconds) to wait for the cancellation of the command execution.
+ The cancellation token.
+
+
+
+ Returns schema information for the data source of this .
+
+ A that contains schema information.
+
+
+
+ Returns schema information for the data source of this
+ using the specified string for the schema name.
+
+ Specifies the name of the schema to return.
+ A that contains schema information.
+
+
+
+ Returns schema information for the data source of this
+ using the specified string for the schema name and the specified string array
+ for the restriction values.
+
+ Specifies the name of the schema to return.
+ Specifies a set of restriction values for the requested schema.
+ A that contains schema information.
+
+
+
+ Asynchronous version of .
+
+ A token to cancel the asynchronous operation.
+ A task representing the asynchronous operation.
+
+
+
+ Asynchronous version of .
+
+ Specifies the name of the schema to return.
+ A token to cancel the asynchronous operation.
+ A task representing the asynchronous operation.
+
+
+
+ Asynchronous version of .
+
+ Specifies the name of the schema to return.
+ Specifies a set of restriction values for the requested schema.
+ A token to cancel the asynchronous operation.
+ A task representing the asynchronous operation.
+
+
+
+ Gets a schema collection based on the provided restriction values.
+
+ The name of the collection.
+ The values to restrict.
+ A schema collection object.
+
+
+
+ Asynchronous version of the method.
+
+ The name of the collection.
+ The values to restrict.
+ The cancellation token.
+ A collection of schema objects.
+
+
+
+ Asynchronous version of the method.
+
+ The name of the collection.
+ The values to restrict.
+ The cancellation token.
+ Boolean that indicates if the function will be executed asynchronously.
+ A collection of schema objects.
+
+
+
+ Enlists in the specified transaction.
+
+ A reference to an existing in which to enlist.
+
+
+
+ Creates a new object with the exact same ConnectionString value.
+
+ A cloned object.
+
+
+
+ Returns an unopened copy of this connection with a new connection string. If the Password
+ in is not set, the password from this connection will be used.
+ This allows creating a new connection with the same security information while changing other options,
+ such as database or pooling.
+
+ The new connection string to be used.
+ A new with different connection string options but
+ the same password as this connection (unless overridden by ).
+
+
+
+ Sets query timeout. If timeout has been set prior and not
+ yet cleared with ClearCommandTimeout(), it has no effect.
+
+ Timeout in seconds.
+ if a timeout is set.
+
+
+
+ Clears query timeout, allowing next SetCommandTimeout() to succeed.
+
+
+
+ Empties the connection pool associated with the specified connection.
+
+ The associated with the pool to be cleared.
+
+
+
+ clears the connection pool that is associated with the connection.
+ If additional connections associated with connection are in use at the time of the call,
+ they are marked appropriately and are discarded (instead of being returned to the pool)
+ when is called on them.
+
+
+
+
+
+ Asynchronous version of the method.
+
+ The connection associated with the pool to be cleared.
+ The cancellation token.
+
+
+
+ Clears all connection pools.
+
+ ClearAllPools essentially performs a on all current connection pools.
+
+
+
+ Asynchronous version of the method.
+
+ The cancellation token.
+
+
+
+ Represents the method to handle the event of a
+
+
+
+
+
+ Represents the method to handle the event of a
+ .
+
+
+
+
+ Represents the method to handle the event of a
+ .
+
+
+
+
+ Provides data for the InfoMessage event. This class cannot be inherited.
+
+
+
+
+ Gets or sets an array of objects together with the errors found.
+
+
+
+
+ IDisposable wrapper around SetCommandTimeout and ClearCommandTimeout functionality.
+
+
+
+
+ Aids in the creation of connection strings by exposing the connection options as properties.
+ Contains connection options specific to the Classic MySQL protocol.
+
+
+
+
+ Main constructor.
+
+
+
+
+ Constructor accepting a connection string.
+
+ The connection string.
+ Flag that indicates if the connection string has been analyzed.
+
+
+
+ Readonly field containing a collection of classic protocol and protocol shared connection options.
+
+
+
+
+ Gets or sets the name of the named pipe that should be used
+ for communicating with MySQL.
+
+ This property has no effect unless the
+ property has been set to .
+
+
+
+ Gets or sets a boolean value that indicates whether this connection
+ should use compression.
+
+
+
+
+ Gets or sets a boolean value that indicates whether this connection will allow
+ commands to send multiple SQL statements in one execution.
+
+
+
+
+ Gets or sets a boolean value that indicates whether logging is enabled.
+
+
+
+
+ Gets or sets the base name of the shared memory objects used to
+ communicate with MySQL when the shared memory protocol is being used.
+
+
+
+
+ Gets or sets the default command timeout.
+
+
+
+
+ Gets or sets the connection timeout.
+
+
+
+
+ Gets or sets a boolean value that indicates whether this connection will allow
+ to load data local infile.
+
+
+
+
+ Gets or sets the safe path where files can be read and uploaded to the server.
+
+
+
+
+ Gets or sets a boolean value that indicates if the password should be persisted
+ in the connection string.
+
+
+
+
+ Gets or sets a boolean value that indicates if the connection should be encrypted.
+
+ Obsolte. Use instead.
+
+
+
+ Gets or sets a boolean value that indicates if RSA public keys should be retrieved from the server.
+
+ This option is only relevant when SSL is disabled. Setting this option to true in
+ 8.0 servers that have the caching_sha2_password authentication plugin as the default plugin will
+ cause the connection attempt to fail if the user hasn't successfully connected to the server on a
+ previous occasion.
+
+
+
+ Gets or sets the default authentication plugin to be used. This plugin takes precedence over
+ the server-side default authentication plugin when a valid authentication plugin is specified.
+
+
+ The default authentication plugin is mandatory for supporting user-less and password-less Kerberos authentications.
+ If no value is set, it uses the server-side default authentication plugin.
+
+
+
+
+ Gets or sets the OCI configuration file location.
+
+
+ The default values vary depending on the operating system. On Windows systems the value is '%HOMEDRIVE%%HOMEPATH%\.oci\config'.
+ For Linux and macOS systems it is '~/.oci/config'.
+
+
+
+
+ Gets or sets the profile to use from the OCI configuration file.
+
+
+ The default value is "DEFAULT".
+
+
+
+
+ Gets or sets the mode value to be used in Kerberos authentication.
+
+
+ If (default value) is used, then it will try to log in using
+ and then fallback to mode value in case of error.
+
+
+
+
+ Gets or sets a boolean value that indicates if zero date time values are supported.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if zero datetime values should be
+ converted to DateTime.MinValue.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if the Usage Advisor should be enabled.
+
+ Default value is false.
+
+
+
+ Gets or sets the size of the stored procedure cache.
+
+ Default value is 25.
+
+
+
+ Gets or sets a boolean value that indicates if the performance monitor hooks should be enabled.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if an opened connection should particiapte in the current scope.
+
+ Default value is true.
+
+
+
+ Gets or sets a boolean value that indicates if security asserts must be included.
+
+ Must be set to true when using the class in a partial trust environment,
+ with the library installed in the GAC of the hosting environment. Not supported in .NET Core.
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if column binary flags set by the server are ignored.
+
+ Default value is true.
+
+
+
+ Gets or sets a boolean value that indicates if TINYINT(1) shound be treated as a BOOLEAN.
+
+ Default value is true.
+
+
+
+ Gets or sets a boolean value that indicates if the provider expects user variables in the SQL.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if the session should be interactive.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if server functions should be treated as returning a string.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if the server should report affected rows instead of found rows.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if items of data type BINARY(16) should be treated as guids.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if SQL Server syntax should be allowed by supporting square brackets
+ around symbols instead of backticks.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates if caching of TableDirect commands is enabled.
+
+ Default value is false.
+
+
+
+ Gets or sets the seconds for how long a TableDirect result should be cached.
+
+ Default value is 0.
+
+
+
+ Gets or sets a boolean value that indicates if stored routine parameters should be checked against the server.
+
+ Default value is true.
+
+
+
+ Gets or sets a boolean value that indicates if this connection will use replication.
+
+ Default value is false.
+
+
+
+ Gets or sets the list of interceptors that can triage thrown MySqlExceptions.
+
+
+
+
+ Gets or sets the list of interceptors that can intercept command operations.
+
+
+
+
+ Gets or sets the event for the Fido callback.
+
+
+
+
+ Gets or sets the event for the WebauthN callback.
+
+
+
+
+ Gets or sets the lifetime of a pooled connection.
+
+ Default value is 0.
+
+
+
+ Gets or sets a boolean value indicating if connection pooling is enabled.
+
+ Default value is true.
+
+
+
+ Gets the minimum connection pool size.
+
+ Default value is 0.
+
+
+
+ Gets or sets the maximum connection pool setting.
+
+ Default value is 100.
+
+
+
+ Gets or sets a boolean value that indicates if the connection should be reset when retrieved
+ from the pool.
+
+ Default value is false.
+
+
+
+ Gets or sets a boolean value that indicates whether the server variable settings are updated by a
+ SHOW VARIABLES command each time a pooled connection is returned.
+
+ Default value is false.
+
+
+
+ Indicates whether the driver should treat binary BLOBs as UTF8.
+
+ Default value is false.
+
+
+
+ Gets or sets the pattern to match for the columns that should be treated as UTF8.
+
+
+
+
+ Gets or sets the pattern to match for the columns that should not be treated as UTF8.
+
+
+
+
+ Gets or sets a connection option.
+
+ The keyword that identifies the connection option to modify.
+
+
+
+ Retrieves the value corresponding to the supplied key from this .
+
+ The key of the item to retrieve.
+ The value corresponding to the .
+ if was found within the connection string;
+ otherwise, .
+ contains a null value.
+
+
+
+ Provides a means of reading a forward-only stream of rows from a MySQL database. This class cannot be inherited.
+
+
+
+ To create a , you must call the
+ method of the object, rather than directly using a constructor.
+
+
+ While the is in use, the associated
+ is busy serving the , and no other operations can be performed
+ on the other than closing it. This is the case until the
+ method of the is called.
+
+
+ and
+ are the only properties that you can call after the is
+ closed. Though the property may be accessed at any time
+ while the exists, always call before returning
+ the value of to ensure an accurate return value.
+
+
+ For optimal performance, avoids creating
+ unnecessary objects or making unnecessary copies of data. As a result, multiple calls
+ to methods such as return a reference to the
+ same object. Use caution if you are modifying the underlying value of the objects
+ returned by methods such as .
+
+
+
+
+
+ Gets the number of columns in the current row.
+
+ The number of columns in the current row.
+
+
+
+ Gets a value indicating whether the contains one or more rows.
+
+ true if the contains one or more rows; otherwise false.
+
+
+
+ Gets a value indicating whether the data reader is closed.
+
+ true if the is closed; otherwise false.
+
+
+
+ Gets the number of rows changed, inserted, or deleted by execution of the SQL statement.
+
+ The number of rows changed, inserted, or deleted.
+ -1 for SELECT statements; 0 if no rows were affected or the statement failed.
+
+
+
+ Overloaded. Gets the value of a column in its native format.
+ In C#, this property is the indexer for the class.
+
+ The value of the specified column.
+
+
+
+ Gets the value of a column in its native format.
+ [C#] In C#, this property is the indexer for the class.
+
+ The value of the specified column.
+
+
+
+ Gets a value indicating the depth of nesting for the current row. This method is not
+ supported currently and always returns 0.
+
+ The depth of nesting for the current row.
+
+
+
+ Closes the object.
+
+
+
+
+ Gets the value of the specified column as a Boolean.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a Boolean.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a byte.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a byte.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a sbyte.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a sbyte.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Reads a stream of bytes from the specified column offset into the buffer an array starting at the given buffer offset.
+
+ The zero-based column ordinal.
+ The index within the field from which to begin the read operation.
+ The buffer into which to read the stream of bytes.
+ The index for buffer to begin the read operation.
+ The maximum length to copy into the buffer.
+ The actual number of bytes read.
+
+
+
+ Gets the value of the specified column as a single character.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a single character.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Reads a stream of characters from the specified column offset into the buffer as an array starting at the given buffer offset.
+
+ The zero-based column ordinal.
+ The index within the row from which to begin the read operation.
+ The buffer into which to copy the data.
+ The index with the buffer to which the data will be copied.
+ The maximum number of characters to read.
+ The actual number of characters read.
+
+
+
+ Gets the name of the source data type.
+
+ The zero-based column ordinal.
+ A string representing the name of the data type.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call IsDBNull to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call IsDBNull to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+
+ MySql allows date columns to contain the value '0000-00-00' and datetime
+ columns to contain the value '0000-00-00 00:00:00'. The DateTime structure cannot contain
+ or represent these values. To read a datetime value from a column that might
+ contain zero values, use .
+
+
+ The behavior of reading a zero datetime column using this method is defined by the
+ ZeroDateTimeBehavior connection string option. For more information on this option,
+ please refer to .
+
+
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+
+ MySql allows date columns to contain the value '0000-00-00' and datetime
+ columns to contain the value '0000-00-00 00:00:00'. The DateTime structure cannot contain
+ or represent these values. To read a datetime value from a column that might
+ contain zero values, use .
+
+
+ The behavior of reading a zero datetime column using this method is defined by the
+ ZeroDateTimeBehavior connection string option. For more information on this option,
+ please refer to .
+
+
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a .
+
+ The name of the colum.
+ The value of the specified column as a .
+
+
+
+ Gets the value of the specified column as a .
+
+ The index of the colum.
+ The value of the specified column as a .
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a double-precision floating point number.
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a double-precision floating point number.
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the Type that is the data type of the object.
+
+ The column name.
+ The data type of the specified column.
+
+
+
+ Gets the Type that is the data type of the object.
+
+ The zero-based column ordinal.
+ The data type of the specified column.
+
+
+
+ Gets the value of the specified column as a single-precision floating point number.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a single-precision floating point number.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the body definition of a routine.
+
+ The column name.
+ The definition of the routine.
+
+
+
+ Gets the value of the specified column as a globally-unique identifier(GUID).
+
+ The name of the column.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a globally-unique identifier(GUID).
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 16-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 16-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 32-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 32-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 64-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 64-bit signed integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the name of the specified column.
+
+ The zero-based column ordinal.
+ The name of the specified column.
+
+
+
+ Gets the column ordinal, given the name of the column.
+
+ The name of the column.
+ The zero-based column ordinal.
+
+
+
+ Gets a stream to retrieve data from the specified column.
+
+ The zero-based column ordinal.
+ A stream
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a object.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column as a object.
+
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets the value of the specified column in its native format.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Gets all attribute columns in the collection for the current row.
+
+ An array of into which to copy the attribute columns.
+ The number of instances of in the array.
+
+
+ Gets the value of the specified column as a 16-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 16-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 32-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 32-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 64-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The column name.
+ The value of the specified column.
+
+
+ Gets the value of the specified column as a 64-bit unsigned integer.
+
+ No conversions are performed; therefore, the data retrieved must already be a value.
+ Call to check for null values before calling this method.
+
+ The zero-based column ordinal.
+ The value of the specified column.
+
+
+
+ Returns a object for the requested column ordinal.
+
+ The zero-based column ordinal.
+ A object.
+
+
+
+ Gets a value indicating whether the column contains non-existent or missing values.
+
+ The zero-based column ordinal.
+ true if the specified column is equivalent to ; otherwise false.
+
+
+
+ Gets the value of the specified column as a .
+
+ The index of the colum.
+ The value of the specified column as a .
+
+
+
+ Gets the value of the specified column as a .
+
+ The name of the colum.
+ The value of the specified column as a .
+
+
+
+ Returns an that iterates through the .
+
+ An that can be used to iterate through the rows in the data reader.
+
+
+
+ Gets the value of the specified column as a type.
+
+ Type.
+ The index of the column.
+ The value of the column.
+
+
+
+ Describes the column metadata of the .
+
+ A object.
+
+
+
+ Advances the data reader to the next result when reading the results of batch SQL statements.
+
+ if there are more result sets; otherwise .
+
+
+
+ Advances the to the next record.
+
+ true if there are more rows; otherwise false.
+
+
+
+ Releases all resources used by the current instance of the class.
+
+
+
+
+ Summary description for ClientParam.
+
+
+
+
+ DB Operations Code
+
+
+
+
+ Specifies MySQL specific data type of a field, property, for use in a .
+
+
+
+
+
+ A fixed precision and scale numeric value between -1038
+ -1 and 10 38 -1.
+
+
+
+
+ The signed range is -128 to 127. The unsigned
+ range is 0 to 255.
+
+
+
+
+ A 16-bit signed integer. The signed range is
+ -32768 to 32767. The unsigned range is 0 to 65535
+
+
+
+
+ Specifies a 24 (3 byte) signed or unsigned value.
+
+
+
+
+ A 32-bit signed integer
+
+
+
+
+ A 64-bit signed integer.
+
+
+
+
+ A small (single-precision) floating-point
+ number. Allowable values are -3.402823466E+38 to -1.175494351E-38,
+ 0, and 1.175494351E-38 to 3.402823466E+38.
+
+
+
+
+ A normal-size (double-precision)
+ floating-point number. Allowable values are -1.7976931348623157E+308
+ to -2.2250738585072014E-308, 0, and 2.2250738585072014E-308 to
+ 1.7976931348623157E+308.
+
+
+
+
+ A timestamp. The range is '1970-01-01 00:00:00' to sometime in the
+ year 2037
+
+
+
+
+ Date The supported range is '1000-01-01' to '9999-12-31'.
+
+
+
+
+ Time The range is '-838:59:59' to '838:59:59'.
+
+
+
+
+ DateTime The supported range is '1000-01-01 00:00:00' to
+ '9999-12-31 23:59:59'.
+
+
+
+
+ Datetime The supported range is '1000-01-01 00:00:00' to
+ '9999-12-31 23:59:59'.
+
+
+
+
+ A year in 2- or 4-digit format (default is 4-digit). The
+ allowable values are 1901 to 2155, 0000 in the 4-digit year
+ format, and 1970-2069 if you use the 2-digit format (70-69).
+
+
+
+
+ Obsolete Use Datetime or Date type
+
+
+
+
+ A variable-length string containing 0 to 65535 characters
+
+
+
+
+ Bit-field data type
+
+
+
+
+ JSON
+
+
+
+
+ New Decimal
+
+
+
+
+ An enumeration. A string object that can have only one value,
+ chosen from the list of values 'value1', 'value2', ..., NULL
+ or the special "" error value. An ENUM can have a maximum of
+ 65535 distinct values
+
+
+
+
+ A set. A string object that can have zero or more values, each
+ of which must be chosen from the list of values 'value1', 'value2',
+ ... A SET can have a maximum of 64 members.
+
+
+
+
+ A binary column with a maximum length of 255 (2^8 - 1)
+ characters
+
+
+
+
+ A binary column with a maximum length of 16777215 (2^24 - 1) bytes.
+
+
+
+
+ A binary column with a maximum length of 4294967295 or
+ 4G (2^32 - 1) bytes.
+
+
+
+
+ A binary column with a maximum length of 65535 (2^16 - 1) bytes.
+
+
+
+
+ A variable-length string containing 0 to 255 bytes.
+
+
+
+
+ A fixed-length string.
+
+
+
+
+ Geometric (GIS) data type.
+
+
+
+
+ Unsigned 8-bit value.
+
+
+
+
+ Unsigned 16-bit value.
+
+
+
+
+ Unsigned 24-bit value.
+
+
+
+
+ Unsigned 32-bit value.
+
+
+
+
+ Unsigned 64-bit value.
+
+
+
+
+ Fixed length binary string.
+
+
+
+
+ Variable length binary string.
+
+
+
+
+ A text column with a maximum length of 255 (2^8 - 1) characters.
+
+
+
+
+ A text column with a maximum length of 16777215 (2^24 - 1) characters.
+
+
+
+
+ A text column with a maximum length of 4294967295 or
+ 4G (2^32 - 1) characters.
+
+
+
+
+ A text column with a maximum length of 65535 (2^16 - 1) characters.
+
+
+
+
+ A guid column.
+
+
+
+
+ Allows the user to specify the type of connection that should
+ be used.
+
+
+
+
+ TCP/IP style connection. Works everywhere.
+
+
+
+
+ TCP/IP style connection. Works everywhere.
+
+
+
+
+ TCP/IP style connection. Works everywhere.
+
+
+
+
+ Named pipe connection. Works only on Windows systems.
+
+
+
+
+ Named pipe connection. Works only on Windows systems.
+
+
+
+
+ Unix domain socket connection. Works only with Unix systems.
+
+
+
+
+ Unix domain socket connection. Works only with Unix systems.
+
+
+
+
+ Shared memory connection. Currently works only with Windows systems.
+
+
+
+
+ Shared memory connection. Currently works only with Windows systems.
+
+
+
+
+ SSL options for connection.
+
+
+
+
+ Do not use SSL.
+
+
+
+
+ Do not use SSL.
+
+
+
+
+ Use SSL, if server supports it. This option is only available for the classic protocol.
+
+
+
+
+ Use SSL, if server supports it. This option is only available for the classic protocol.
+
+
+
+
+ Always use SSL. Deny connection if server does not support SSL.
+ Do not perform server certificate validation.
+ This is the default SSL mode when the same isn't specified as part of the connection string.
+
+
+
+
+ Always use SSL. Validate server SSL certificate, but different host name mismatch.
+
+
+
+
+ Always use SSL and perform full certificate validation.
+
+
+
+
+ Specifies the connection types supported
+
+
+
+
+ Use TCP/IP sockets.
+
+
+
+
+ Use client library.
+
+
+
+
+ Use MySQL embedded server.
+
+
+
+
+ Defines the location of the certificate store.
+
+
+
+
+ Do not use certificate store.
+
+
+
+
+ Use certificate store for the current user.
+
+
+
+
+ User certificate store for the machine.
+
+
+
+
+ Specifies the authentication mechanism that should be used.
+
+
+
+
+ If SSL is enabled or Unix sockets are being used, sets PLAIN as the authentication mechanism;
+ otherwise, it tries to use MYSQL41 and then SHA256_MEMORY.
+
+
+
+
+ Authenticate using PLAIN.
+
+
+
+
+ Authenticate using MYSQL41.
+
+
+
+
+ Authenticate using EXTERNAL.
+
+
+
+
+ Authenticate using SHA256_MEMORY.
+
+
+
+
+ Defines waiting options that may be used with row locking options.
+
+
+
+
+ Waits until the blocking transaction releases the row lock.
+
+
+
+
+ Never waits to acquire a row lock. The query executes immediately,
+ failing with an error if a requested row is locked.
+
+
+
+
+ Never waits to acquire a row lock. The query executes immediately,
+ removing locked rows from the result set.
+
+
+
+
+ Defines the type of compression used when data is exchanged between client and server.
+
+
+
+
+ Uses compression if client and server are able to reach a concensus. Otherwise, compression
+ is not used.
+
+
+
+
+ Enforces the use of compression. If no concensus is reached, an error is raised.
+
+
+
+
+ Disables compression.
+
+
+
+
+ Defines the compression algorithms that can be used.
+
+
+
+
+ The warnings that cause a connection to close.
+
+
+
+
+ Controls which column type should be read as type System.Guid.
+
+
+
+
+ Same as Char36 when OldGuids equals False, otherwise, the same as LittleEndianBinary16.
+
+
+
+
+ No column types are read or written as type Guid.
+
+
+
+
+ Char(36) columns are read or written as type Guid using lowercase hex with hyphens, which match UUID().
+
+
+
+
+ Char(32) columns are read or written as type Guid using lowercase hex without hyphens.
+
+
+
+
+ Binary(16) columns are read or written as type Guid using big-endian byte order, which matches UUID_TO_BIN(x).
+
+
+
+
+ Binary(16) columns are read or written as type Guid using big-endian byte order
+ with time parts swapped, which matches UUID_TO_BIN(x,1).
+
+
+
+
+ Binary(16) columns are read or written as type Guid using little-endian byte order,
+ that is, the byte order used by System.Guid.ToByteArray and System.Guid.#ctor(System.Byte[]).
+
+
+
+
+ Defines the different APIs that can be used for Kerberos authentication.
+
+
+
+
+ Use and then fall back to in case of error.
+
+
+
+
+ Use MS Security Support Provider Interface (SSPI).
+
+
+
+
+ Use Generic Security Services API (GSSAPI) through MIT Kerberos library.
+
+
+
+
+ Collection of error codes that can be returned by the server
+
+
+
+
+
+
+
+
+
+
+ Error level
+
+
+
+
+ Error code
+
+
+
+
+ Error message
+
+
+
+
+ Provides a reference to error codes returned by MySQL.
+
+
+
+
+ ER_HASHCHK
+
+
+
+ ER_NISAMCHK
+
+
+
+ ER_NO
+
+
+
+ ER_YES
+
+
+ The file couldn't be created.
+ ER_CANT_CREATE_FILE
+
+
+ The table couldn't be created.
+ ER_CANT_CREATE_TABLE
+
+
+ The database couldn't be created.
+ ER_CANT_CREATE_DB
+
+
+ The database couldn't be created, it already exists.
+ ER_DB_CREATE_EXISTS
+
+
+ The database couldn't be dropped, it doesn't exist.
+ ER_DB_DROP_EXISTS
+
+
+ The database couldn't be dropped, the file can't be deleted.
+ ER_DB_DROP_DELETE
+
+
+ The database couldn't be dropped, the directory can't be deleted.
+ ER_DB_DROP_RMDIR
+
+
+ The file couldn't be deleted.
+ ER_CANT_DELETE_FILE
+
+
+ The record couldn't be read from the system table.
+ ER_CANT_FIND_SYSTEM_REC
+
+
+ The status couldn't be retrieved.
+ ER_CANT_GET_STAT
+
+
+ The working directory couldn't be retrieved.
+ ER_CANT_GET_WD
+
+
+ The file couldn't be locked.
+ ER_CANT_LOCK
+
+
+ The file couldn't be opened.
+ ER_CANT_OPEN_FILE
+
+
+ The file couldn't be found.
+ ER_FILE_NOT_FOUND
+
+
+ The directory couldn't be read.
+ ER_CANT_READ_DIR
+
+
+ The working directory couldn't be entered.
+ ER_CANT_SET_WD
+
+
+ The record changed since it was last read.
+ ER_CHECKREAD
+
+
+ The disk is full.
+ ER_DISK_FULL
+
+
+
+ There is already a key with the given values.
+
+
+
+ An error occurred when closing the file.
+ ER_ERROR_ON_CLOSE
+
+
+ An error occurred when reading from the file.
+ ER_ERROR_ON_READ
+
+
+ An error occurred when renaming then file.
+ ER_ERROR_ON_RENAME
+
+
+ An error occurred when writing to the file.
+ ER_ERROR_ON_WRITE
+
+
+ The file is in use.
+ ER_FILE_USED
+
+
+ Sorting has been aborted.
+ ER_FILSORT_ABORT
+
+
+ The view doesn't exist.
+ ER_FORM_NOT_FOUND
+
+
+ Got the specified error from the table storage engine.
+ ER_GET_ERRNO
+
+
+ The table storage engine doesn't support the specified option.
+ ER_ILLEGAL_HA
+
+
+
+ The specified key was not found.
+
+
+
+ The file contains incorrect information.
+ ER_NOT_FORM_FILE
+
+
+ The key file is incorrect for the table, it should be repaired.
+ ER_NOT_KEYFILE
+
+
+ The key file is old for the table, it should be repaired.
+ ER_OLD_KEYFILE
+
+
+ The table is read-only
+ ER_OPEN_AS_READONLY
+
+
+ The server is out of memory, it should be restarted.
+ ER_OUTOFMEMORY
+
+
+ The server is out of sort-memory, the sort buffer size should be increased.
+ ER_OUT_OF_SORTMEMORY
+
+
+ An unexpected EOF was found when reading from the file.
+ ER_UNEXPECTED_EOF
+
+
+ Too many connections are open.
+ ER_CON_COUNT_ERROR
+
+
+ The server is out of resources, check if MySql or some other process is using all available memory.
+ ER_OUT_OF_RESOURCES
+
+
+
+ Given when the connection is unable to successfully connect to host.
+
+
+
+ The handshake was invalid.
+ ER_HANDSHAKE_ERROR
+
+
+ Access was denied for the specified user using the specified database.
+ ER_DBACCESS_DENIED_ERROR
+
+
+
+ Normally returned when an incorrect password is given
+
+
+
+ No database has been selected.
+ ER_NO_DB_ERROR
+
+
+ The command is unknown.
+ ER_UNKNOWN_COM_ERROR
+
+
+ The specified column cannot be NULL.
+ ER_BAD_NULL_ERROR
+
+
+ The specified database is not known.
+
+
+ The specified table already exists.
+ ER_TABLE_EXISTS_ERROR
+
+
+ The specified table is unknown.
+ ER_BAD_TABLE_ERROR
+
+
+ The specified column is ambiguous.
+ ER_NON_UNIQ_ERROR
+
+
+ The server is currently being shutdown.
+ ER_SERVER_SHUTDOWN
+
+
+ The specified columns is unknown.
+ ER_BAD_FIELD_ERROR
+
+
+ The specified column isn't in GROUP BY.
+ ER_WRONG_FIELD_WITH_GROUP
+
+
+ The specified columns cannot be grouped on.
+ ER_WRONG_GROUP_FIELD
+
+
+ There are sum functions and columns in the same statement.
+ ER_WRONG_SUM_SELECT
+
+
+ The column count doesn't match the value count.
+ ER_WRONG_VALUE_COUNT
+
+
+ The identifier name is too long.
+ ER_TOO_LONG_IDENT
+
+
+ The column name is duplicated.
+ ER_DUP_FIELDNAME
+
+
+
+ Duplicate Key Name
+
+
+
+
+ Duplicate Key Entry
+
+
+
+ The column specifier is incorrect.
+ ER_WRONG_FIELD_SPEC
+
+
+ An error occurred when parsing the statement.
+ ER_PARSE_ERROR
+
+
+ The statement is empty.
+ ER_EMPTY_QUERY
+
+
+ The table alias isn't unique.
+ ER_NONUNIQ_TABLE
+
+
+ The default value is invalid for the specified field.
+ ER_INVALID_DEFAULT
+
+
+ The table has multiple primary keys defined.
+ ER_MULTIPLE_PRI_KEY
+
+
+ Too many keys were defined for the table.
+ ER_TOO_MANY_KEYS
+
+
+ Too many parts to the keys were defined for the table.
+ ER_TOO_MANY_KEY_PARTS
+
+
+ The specified key is too long
+ ER_TOO_LONG_KEY
+
+
+ The specified key column doesn't exist in the table.
+ ER_KEY_COLUMN_DOES_NOT_EXITS
+
+
+ The BLOB column was used as a key, this can't be done.
+ ER_BLOB_USED_AS_KEY
+
+
+ The column length is too big for the specified column type.
+ ER_TOO_BIG_FIELDLENGTH
+
+
+ There can only be one auto-column, and it must be defined as a PK.
+ ER_WRONG_AUTO_KEY
+
+
+ The server is ready to accept connections.
+ ER_READY
+
+
+
+ ER_NORMAL_SHUTDOWN
+
+
+ The server received the specified signal and is aborting.
+ ER_GOT_SIGNAL
+
+
+ The server shutdown is complete.
+ ER_SHUTDOWN_COMPLETE
+
+
+ The server is forcing close of the specified thread.
+ ER_FORCING_CLOSE
+
+
+ An error occurred when creating the IP socket.
+ ER_IPSOCK_ERROR
+
+
+ The table has no index like the one used in CREATE INDEX.
+ ER_NO_SUCH_INDEX
+
+
+ The field separator argument is not what is expected, check the manual.
+ ER_WRONG_FIELD_TERMINATORS
+
+
+ The BLOB columns must terminated, fixed row lengths cannot be used.
+ ER_BLOBS_AND_NO_TERMINATED
+
+
+ The text file cannot be read.
+ ER_TEXTFILE_NOT_READABLE
+
+
+ The specified file already exists.
+ ER_FILE_EXISTS_ERROR
+
+
+ Information returned by the LOAD statement.
+ ER_LOAD_INFO
+
+
+ Information returned by an UPDATE statement.
+ ER_ALTER_INFO
+
+
+ The prefix key is incorrect.
+ ER_WRONG_SUB_KEY
+
+
+ All columns cannot be removed from a table, use DROP TABLE instead.
+ ER_CANT_REMOVE_ALL_FIELDS
+
+
+ Cannot DROP, check that the column or key exists.
+ ER_CANT_DROP_FIELD_OR_KEY
+
+
+ Information returned by an INSERT statement.
+ ER_INSERT_INFO
+
+
+ The target table cannot be specified for update in FROM clause.
+ ER_UPDATE_TABLE_USED
+
+
+ The specified thread ID is unknown.
+ ER_NO_SUCH_THREAD
+
+
+ The thread cannot be killed, the current user is not the owner.
+ ER_KILL_DENIED_ERROR
+
+
+ No tables used in the statement.
+ ER_NO_TABLES_USED
+
+
+ Too many string have been used for the specified column and SET.
+ ER_TOO_BIG_SET
+
+
+ A unique filename couldn't be generated.
+ ER_NO_UNIQUE_LOGFILE
+
+
+ The specified table was locked with a READ lock, and can't be updated.
+ ER_TABLE_NOT_LOCKED_FOR_WRITE
+
+
+ The specified table was not locked with LOCK TABLES.
+ ER_TABLE_NOT_LOCKED
+
+
+ BLOB and Text columns cannot have a default value.
+ ER_BLOB_CANT_HAVE_DEFAULT
+
+
+ The specified database name is incorrect.
+ ER_WRONG_DB_NAME
+
+
+ The specified table name is incorrect.
+ ER_WRONG_TABLE_NAME
+
+
+ The SELECT command would examine more than MAX_JOIN_SIZE rows, check the WHERE clause and use SET SQL_BIG_SELECTS=1 or SET SQL_MAX_JOIN_SIZE=# if the SELECT is ok.
+ ER_TOO_BIG_SELECT
+
+
+ An unknown error occurred.
+ ER_UNKNOWN_ERROR
+
+
+ The specified procedure is unknown.
+ ER_UNKNOWN_PROCEDURE
+
+
+ The number of parameters provided for the specified procedure is incorrect.
+ ER_WRONG_PARAMCOUNT_TO_PROCEDURE
+
+
+ The parameters provided for the specified procedure are incorrect.
+ ER_WRONG_PARAMETERS_TO_PROCEDURE
+
+
+ The specified table is unknown.
+ ER_UNKNOWN_TABLE
+
+
+ The specified column has been specified twice.
+ ER_FIELD_SPECIFIED_TWICE
+
+
+ The group function has been incorrectly used.
+ ER_INVALID_GROUP_FUNC_USE
+
+
+ The specified table uses an extension that doesn't exist in this MySQL version.
+ ER_UNSUPPORTED_EXTENSION
+
+
+ The table must have at least one column.
+ ER_TABLE_MUST_HAVE_COLUMNS
+
+
+ The specified table is full.
+ ER_RECORD_FILE_FULL
+
+
+ The specified character set is unknown.
+ ER_UNKNOWN_CHARACTER_SET
+
+
+ Too many tables, MySQL can only use the specified number of tables in a JOIN.
+ ER_TOO_MANY_TABLES
+
+
+ Too many columns
+ ER_TOO_MANY_FIELDS
+
+
+ The row size is too large, the maximum row size for the used tables (not counting BLOBS) is specified, change some columns or BLOBS.
+ ER_TOO_BIG_ROWSIZE
+
+
+ A thread stack overrun occurred. Stack statistics are specified.
+ ER_STACK_OVERRUN
+
+
+ A cross dependency was found in the OUTER JOIN, examine the ON conditions.
+ ER_WRONG_OUTER_JOIN
+
+
+ The table handler doesn't support NULL in the given index, change specified column to be NOT NULL or use another handler.
+ ER_NULL_COLUMN_IN_INDEX
+
+
+ The specified user defined function cannot be loaded.
+ ER_CANT_FIND_UDF
+
+
+ The specified user defined function cannot be initialised.
+ ER_CANT_INITIALIZE_UDF
+
+
+ No paths are allowed for the shared library.
+ ER_UDF_NO_PATHS
+
+
+ The specified user defined function already exists.
+ ER_UDF_EXISTS
+
+
+ The specified shared library cannot be opened.
+ ER_CANT_OPEN_LIBRARY
+
+
+ The specified symbol cannot be found in the library.
+ ER_CANT_FIND_DL_ENTRY
+
+
+ The specified function is not defined.
+ ER_FUNCTION_NOT_DEFINED
+
+
+ The specified host is blocked because of too many connection errors, unblock with 'mysqladmin flush-hosts'.
+ ER_HOST_IS_BLOCKED
+
+
+
+ The given host is not allowed to connect
+
+
+
+
+ The anonymous user is not allowed to connect
+
+
+
+
+ The given password is not allowed
+
+
+
+
+ The given password does not match
+
+
+
+ Information returned by an UPDATE statement.
+ ER_UPDATE_INFO
+
+
+ A new thread couldn't be created.
+ ER_CANT_CREATE_THREAD
+
+
+ The column count doesn't match the value count.
+ ER_WRONG_VALUE_COUNT_ON_ROW
+
+
+ The specified table can't be re-opened.
+ ER_CANT_REOPEN_TABLE
+
+
+ The NULL value has been used incorrectly.
+ ER_INVALID_USE_OF_NULL
+
+
+ The regular expression contains an error.
+ ER_REGEXP_ERROR
+
+
+ GROUP columns (MIN(), MAX(), COUNT(), ...) cannot be mixes with no GROUP columns if there is not GROUP BY clause.
+ ER_MIX_OF_GROUP_FUNC_AND_FIELDS
+
+
+
+ ER_NONEXISTING_GRANT
+
+
+
+ ER_TABLEACCESS_DENIED_ERROR
+
+
+
+ ER_COLUMNACCESS_DENIED_ERROR
+
+
+
+ ER_ILLEGAL_GRANT_FOR_TABLE
+
+
+
+ ER_GRANT_WRONG_HOST_OR_USER
+
+
+
+ ER_NO_SUCH_TABLE
+
+
+
+ ER_NONEXISTING_TABLE_GRANT
+
+
+
+ ER_NOT_ALLOWED_COMMAND
+
+
+
+ ER_SYNTAX_ERROR
+
+
+
+ ER_DELAYED_CANT_CHANGE_LOCK
+
+
+
+ ER_TOO_MANY_DELAYED_THREADS
+
+
+
+ ER_ABORTING_CONNECTION
+
+
+
+ An attempt was made to send or receive a packet larger than
+ max_allowed_packet_size
+
+
+
+
+ ER_NET_READ_ERROR_FROM_PIPE
+
+
+
+ ER_NET_FCNTL_ERROR
+
+
+
+ ER_NET_PACKETS_OUT_OF_ORDER
+
+
+
+ ER_NET_UNCOMPRESS_ERROR
+
+
+
+ ER_NET_READ_ERROR
+
+
+
+ ER_NET_READ_INTERRUPTED
+
+
+
+ ER_NET_ERROR_ON_WRITE
+
+
+
+ ER_NET_WRITE_INTERRUPTED
+
+
+
+ ER_TOO_LONG_STRING
+
+
+
+ ER_TABLE_CANT_HANDLE_BLOB
+
+
+
+ ER_TABLE_CANT_HANDLE_AUTO_INCREMENT
+
+
+
+ ER_DELAYED_INSERT_TABLE_LOCKED
+
+
+
+ ER_WRONG_COLUMN_NAME
+
+
+
+ ER_WRONG_KEY_COLUMN
+
+
+
+ ER_WRONG_MRG_TABLE
+
+
+
+ ER_DUP_UNIQUE
+
+
+
+ ER_BLOB_KEY_WITHOUT_LENGTH
+
+
+
+ ER_PRIMARY_CANT_HAVE_NULL
+
+
+
+ ER_TOO_MANY_ROWS
+
+
+
+ ER_REQUIRES_PRIMARY_KEY
+
+
+
+ ER_NO_RAID_COMPILED
+
+
+
+ ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE
+
+
+
+ ER_KEY_DOES_NOT_EXITS
+
+
+
+ ER_CHECK_NO_SUCH_TABLE
+
+
+
+ ER_CHECK_NOT_IMPLEMENTED
+
+
+
+ ER_CANT_DO_THIS_DURING_AN_TRANSACTION
+
+
+
+ ER_ERROR_DURING_COMMIT
+
+
+
+ ER_ERROR_DURING_ROLLBACK
+
+
+
+ ER_ERROR_DURING_FLUSH_LOGS
+
+
+
+ ER_ERROR_DURING_CHECKPOINT
+
+
+
+ ER_NEW_ABORTING_CONNECTION
+
+
+
+ ER_DUMP_NOT_IMPLEMENTED
+
+
+
+ ER_FLUSH_SOURCE_BINLOG_CLOSED
+
+
+
+ ER_INDEX_REBUILD
+
+
+
+ ER_SOURCE
+
+
+
+ ER_SOURCE_NET_READ
+
+
+
+ ER_SOURCE_NET_WRITE
+
+
+
+ ER_FT_MATCHING_KEY_NOT_FOUND
+
+
+
+ ER_LOCK_OR_ACTIVE_TRANSACTION
+
+
+
+ ER_UNKNOWN_SYSTEM_VARIABLE
+
+
+
+ ER_CRASHED_ON_USAGE
+
+
+
+ ER_CRASHED_ON_REPAIR
+
+
+
+ ER_WARNING_NOT_COMPLETE_ROLLBACK
+
+
+
+ ER_TRANS_CACHE_FULL
+
+
+
+ ER_REPLICA_MUST_STOP
+
+
+
+ ER_REPLICA_NOT_RUNNING
+
+
+
+ ER_BAD_REPLICA
+
+
+
+ ER_SOURCE_INFO
+
+
+
+ ER_REPLICA_THREAD
+
+
+
+ ER_TOO_MANY_USER_CONNECTIONS
+
+
+
+ ER_SET_CONSTANTS_ONLY
+
+
+
+ ER_LOCK_WAIT_TIMEOUT
+
+
+
+ ER_LOCK_TABLE_FULL
+
+
+
+ ER_READ_ONLY_TRANSACTION
+
+
+
+ ER_DROP_DB_WITH_READ_LOCK
+
+
+
+ ER_CREATE_DB_WITH_READ_LOCK
+
+
+
+ ER_WRONG_ARGUMENTS
+
+
+
+ ER_NO_PERMISSION_TO_CREATE_USER
+
+
+
+ ER_UNION_TABLES_IN_DIFFERENT_DIR
+
+
+
+ ER_LOCK_DEADLOCK
+
+
+
+ ER_TABLE_CANT_HANDLE_FT
+
+
+
+ ER_CANNOT_ADD_FOREIGN
+
+
+
+ ER_NO_REFERENCED_ROW
+
+
+
+ ER_ROW_IS_REFERENCED
+
+
+
+ ER_CONNECT_TO_SOURCE
+
+
+
+ ER_QUERY_ON_SOURCE
+
+
+
+ ER_ERROR_WHEN_EXECUTING_COMMAND
+
+
+
+ ER_WRONG_USAGE
+
+
+
+ ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT
+
+
+
+ ER_CANT_UPDATE_WITH_READLOCK
+
+
+
+ ER_MIXING_NOT_ALLOWED
+
+
+
+ ER_DUP_ARGUMENT
+
+
+
+ ER_USER_LIMIT_REACHED
+
+
+
+ ER_SPECIFIC_ACCESS_DENIED_ERROR
+
+
+
+ ER_LOCAL_VARIABLE
+
+
+
+ ER_GLOBAL_VARIABLE
+
+
+
+ ER_NO_DEFAULT
+
+
+
+ ER_WRONG_VALUE_FOR_VAR
+
+
+
+ ER_WRONG_TYPE_FOR_VAR
+
+
+
+ ER_VAR_CANT_BE_READ
+
+
+
+ ER_CANT_USE_OPTION_HERE
+
+
+
+ ER_NOT_SUPPORTED_YET
+
+
+
+ ER_SOURCE_FATAL_ERROR_READING_BINLOG
+
+
+
+ ER_REPLICA_IGNORED_TABLE
+
+
+
+ ER_INCORRECT_GLOBAL_LOCAL_VAR
+
+
+
+ ER_WRONG_FK_DEF
+
+
+
+ ER_KEY_REF_DO_NOT_MATCH_TABLE_REF
+
+
+
+ ER_OPERAND_COLUMNS
+
+
+
+ ER_SUBQUERY_NO_1_ROW
+
+
+
+ ER_UNKNOWN_STMT_HANDLER
+
+
+
+ ER_CORRUPT_HELP_DB
+
+
+
+ ER_CYCLIC_REFERENCE
+
+
+
+ ER_AUTO_CONVERT
+
+
+
+ ER_ILLEGAL_REFERENCE
+
+
+
+ ER_DERIVED_MUST_HAVE_ALIAS
+
+
+
+ ER_SELECT_REDUCED
+
+
+
+ ER_TABLENAME_NOT_ALLOWED_HERE
+
+
+
+ ER_NOT_SUPPORTED_AUTH_MODE
+
+
+
+ ER_SPATIAL_CANT_HAVE_NULL
+
+
+
+ ER_COLLATION_CHARSET_MISMATCH
+
+
+
+ ER_REPLICA_WAS_RUNNING
+
+
+
+ ER_REPLICA_WAS_NOT_RUNNING
+
+
+
+ ER_TOO_BIG_FOR_UNCOMPRESS
+
+
+
+ ER_ZLIB_Z_MEM_ERROR
+
+
+
+ ER_ZLIB_Z_BUF_ERROR
+
+
+
+ ER_ZLIB_Z_DATA_ERROR
+
+
+
+ ER_CUT_VALUE_GROUP_CONCAT
+
+
+
+ ER_WARN_TOO_FEW_RECORDS
+
+
+
+ ER_WARN_TOO_MANY_RECORDS
+
+
+
+ ER_WARN_NULL_TO_NOTNULL
+
+
+
+ ER_WARN_DATA_OUT_OF_RANGE
+
+
+
+ WARN_DATA_TRUNCATED
+
+
+
+ ER_WARN_USING_OTHER_HANDLER
+
+
+
+ ER_CANT_AGGREGATE_2COLLATIONS
+
+
+
+ ER_DROP_USER
+
+
+
+ ER_REVOKE_GRANTS
+
+
+
+ ER_CANT_AGGREGATE_3COLLATIONS
+
+
+
+ ER_CANT_AGGREGATE_NCOLLATIONS
+
+
+
+ ER_VARIABLE_IS_NOT_STRUCT
+
+
+
+ ER_UNKNOWN_COLLATION
+
+
+
+ ER_REPLICA_IGNORED_SSL_PARAMS
+
+
+
+ ER_SERVER_IS_IN_SECURE_AUTH_MODE
+
+
+
+ ER_WARN_FIELD_RESOLVED
+
+
+
+ ER_BAD_REPLICA_UNTIL_COND
+
+
+
+ ER_MISSING_SKIP_REPLICA
+
+
+
+ ER_UNTIL_COND_IGNORED
+
+
+
+ ER_WRONG_NAME_FOR_INDEX
+
+
+
+ ER_WRONG_NAME_FOR_CATALOG
+
+
+
+ ER_WARN_QC_RESIZE
+
+
+
+ ER_BAD_FT_COLUMN
+
+
+
+ ER_UNKNOWN_KEY_CACHE
+
+
+
+ ER_WARN_HOSTNAME_WONT_WORK
+
+
+
+ ER_UNKNOWN_STORAGE_ENGINE
+
+
+
+ ER_WARN_DEPRECATED_SYNTAX
+
+
+
+ ER_NON_UPDATABLE_TABLE
+
+
+
+ ER_FEATURE_DISABLED
+
+
+
+ ER_OPTION_PREVENTS_STATEMENT
+
+
+
+ ER_DUPLICATED_VALUE_IN_TYPE
+
+
+
+ ER_TRUNCATED_WRONG_VALUE
+
+
+
+ ER_TOO_MUCH_AUTO_TIMESTAMP_COLS
+
+
+
+ ER_INVALID_ON_UPDATE
+
+
+
+ ER_UNSUPPORTED_PS
+
+
+
+ ER_GET_ERRMSG
+
+
+
+ ER_GET_TEMPORARY_ERRMSG
+
+
+
+ ER_UNKNOWN_TIME_ZONE
+
+
+
+ ER_WARN_INVALID_TIMESTAMP
+
+
+
+ ER_INVALID_CHARACTER_STRING
+
+
+
+ ER_WARN_ALLOWED_PACKET_OVERFLOWED
+
+
+
+ ER_CONFLICTING_DECLARATIONS
+
+
+
+ ER_SP_NO_RECURSIVE_CREATE
+
+
+
+ ER_SP_ALREADY_EXISTS
+
+
+
+ ER_SP_DOES_NOT_EXIST
+
+
+
+ ER_SP_DROP_FAILED
+
+
+
+ ER_SP_STORE_FAILED
+
+
+
+ ER_SP_LILABEL_MISMATCH
+
+
+
+ ER_SP_LABEL_REDEFINE
+
+
+
+ ER_SP_LABEL_MISMATCH
+
+
+
+ ER_SP_UNINIT_VAR
+
+
+
+ ER_SP_BADSELECT
+
+
+
+ ER_SP_BADRETURN
+
+
+
+ ER_SP_BADSTATEMENT
+
+
+
+ ER_UPDATE_LOG_DEPRECATED_IGNORED
+
+
+
+ ER_UPDATE_LOG_DEPRECATED_TRANSLATED
+
+
+
+ ER_QUERY_INTERRUPTED
+
+
+
+ ER_SP_WRONG_NO_OF_ARGS
+
+
+
+ ER_SP_COND_MISMATCH
+
+
+
+ ER_SP_NORETURN
+
+
+
+ ER_SP_NORETURNEND
+
+
+
+ ER_SP_BAD_CURSOR_QUERY
+
+
+
+ ER_SP_BAD_CURSOR_SELECT
+
+
+
+ ER_SP_CURSOR_MISMATCH
+
+
+
+ ER_SP_CURSOR_ALREADY_OPEN
+
+
+
+ ER_SP_CURSOR_NOT_OPEN
+
+
+
+ ER_SP_UNDECLARED_VAR
+
+
+
+ ER_SP_WRONG_NO_OF_FETCH_ARGS
+
+
+
+ ER_SP_FETCH_NO_DATA
+
+
+
+ ER_SP_DUP_PARAM
+
+
+
+ ER_SP_DUP_VAR
+
+
+
+ ER_SP_DUP_COND
+
+
+
+ ER_SP_DUP_CURS
+
+
+
+ ER_SP_CANT_ALTER
+
+
+
+ ER_SP_SUBSELECT_NYI
+
+
+
+ ER_STMT_NOT_ALLOWED_IN_SF_OR_TRG
+
+
+
+ ER_SP_VARCOND_AFTER_CURSHNDLR
+
+
+
+ ER_SP_CURSOR_AFTER_HANDLER
+
+
+
+ ER_SP_CASE_NOT_FOUND
+
+
+
+ ER_FPARSER_TOO_BIG_FILE
+
+
+
+ ER_FPARSER_BAD_HEADER
+
+
+
+ ER_FPARSER_EOF_IN_COMMENT
+
+
+
+ ER_FPARSER_ERROR_IN_PARAMETER
+
+
+
+ ER_FPARSER_EOF_IN_UNKNOWN_PARAMETER
+
+
+
+ ER_VIEW_NO_EXPLAIN
+
+
+
+ ER_FRM_UNKNOWN_TYPE
+
+
+
+ ER_WRONG_OBJECT
+
+
+
+ ER_NONUPDATEABLE_COLUMN
+
+
+
+ ER_VIEW_SELECT_DERIVED
+
+
+
+ ER_VIEW_SELECT_CLAUSE
+
+
+
+ ER_VIEW_SELECT_VARIABLE
+
+
+
+ ER_VIEW_SELECT_TMPTABLE
+
+
+
+ ER_VIEW_WRONG_LIST
+
+
+
+ ER_WARN_VIEW_MERGE
+
+
+
+ ER_WARN_VIEW_WITHOUT_KEY
+
+
+
+ ER_VIEW_INVALID
+
+
+
+ ER_SP_NO_DROP_SP
+
+
+
+ ER_SP_GOTO_IN_HNDLR
+
+
+
+ ER_TRG_ALREADY_EXISTS
+
+
+
+ ER_TRG_DOES_NOT_EXIST
+
+
+
+ ER_TRG_ON_VIEW_OR_TEMP_TABLE
+
+
+
+ ER_TRG_CANT_CHANGE_ROW
+
+
+
+ ER_TRG_NO_SUCH_ROW_IN_TRG
+
+
+
+ ER_NO_DEFAULT_FOR_FIELD
+
+
+
+ ER_DIVISION_BY_ZERO
+
+
+
+ ER_TRUNCATED_WRONG_VALUE_FOR_FIELD
+
+
+
+ ER_ILLEGAL_VALUE_FOR_TYPE
+
+
+
+ ER_VIEW_NONUPD_CHECK
+
+
+
+ ER_VIEW_CHECK_FAILED
+
+
+
+ ER_PROCACCESS_DENIED_ERROR
+
+
+
+ ER_RELAY_LOG_FAIL
+
+
+
+ ER_PASSWD_LENGTH
+
+
+
+ ER_UNKNOWN_TARGET_BINLOG
+
+
+
+ ER_IO_ERR_LOG_INDEX_READ
+
+
+
+ ER_BINLOG_PURGE_PROHIBITED
+
+
+
+ ER_FSEEK_FAIL
+
+
+
+ ER_BINLOG_PURGE_FATAL_ERR
+
+
+
+ ER_LOG_IN_USE
+
+
+
+ ER_LOG_PURGE_UNKNOWN_ERR
+
+
+
+ ER_RELAY_LOG_INIT
+
+
+
+ ER_NO_BINARY_LOGGING
+
+
+
+ ER_RESERVED_SYNTAX
+
+
+
+ ER_WSAS_FAILED
+
+
+
+ ER_DIFF_GROUPS_PROC
+
+
+
+ ER_NO_GROUP_FOR_PROC
+
+
+
+ ER_ORDER_WITH_PROC
+
+
+
+ ER_LOGGING_PROHIBIT_CHANGING_OF
+
+
+
+ ER_NO_FILE_MAPPING
+
+
+
+ ER_WRONG_MAGIC
+
+
+
+ ER_PS_MANY_PARAM
+
+
+
+ ER_KEY_PART_0
+
+
+
+ ER_VIEW_CHECKSUM
+
+
+
+ ER_VIEW_MULTIUPDATE
+
+
+
+ ER_VIEW_NO_INSERT_FIELD_LIST
+
+
+
+ ER_VIEW_DELETE_MERGE_VIEW
+
+
+
+ ER_CANNOT_USER
+
+
+
+ ER_XAER_NOTA
+
+
+
+ ER_XAER_INVAL
+
+
+
+ ER_XAER_RMFAIL
+
+
+
+ ER_XAER_OUTSIDE
+
+
+
+ ER_XAER_RMERR
+
+
+
+ ER_XA_RBROLLBACK
+
+
+
+ ER_NONEXISTING_PROC_GRANT
+
+
+
+ ER_PROC_AUTO_GRANT_FAIL
+
+
+
+ ER_PROC_AUTO_REVOKE_FAIL
+
+
+
+ ER_DATA_TOO_LONG
+
+
+
+ ER_SP_BAD_SQLSTATE
+
+
+
+ ER_STARTUP
+
+
+
+ ER_LOAD_FROM_FIXED_SIZE_ROWS_TO_VAR
+
+
+
+ ER_CANT_CREATE_USER_WITH_GRANT
+
+
+
+ ER_WRONG_VALUE_FOR_TYPE
+
+
+
+ ER_TABLE_DEF_CHANGED
+
+
+
+ ER_SP_DUP_HANDLER
+
+
+
+ ER_SP_NOT_VAR_ARG
+
+
+
+ ER_SP_NO_RETSET
+
+
+
+ ER_CANT_CREATE_GEOMETRY_OBJECT
+
+
+
+ ER_FAILED_ROUTINE_BREAK_BINLOG
+
+
+
+ ER_BINLOG_UNSAFE_ROUTINE
+
+
+
+ ER_BINLOG_CREATE_ROUTINE_NEED_SUPER
+
+
+
+ ER_EXEC_STMT_WITH_OPEN_CURSOR
+
+
+
+ ER_STMT_HAS_NO_OPEN_CURSOR
+
+
+
+ ER_COMMIT_NOT_ALLOWED_IN_SF_OR_TRG
+
+
+
+ ER_NO_DEFAULT_FOR_VIEW_FIELD
+
+
+
+ ER_SP_NO_RECURSION
+
+
+
+ ER_TOO_BIG_SCALE
+
+
+
+ ER_TOO_BIG_PRECISION
+
+
+
+ ER_M_BIGGER_THAN_D
+
+
+
+ ER_WRONG_LOCK_OF_SYSTEM_TABLE
+
+
+
+ ER_CONNECT_TO_FOREIGN_DATA_SOURCE
+
+
+
+ ER_QUERY_ON_FOREIGN_DATA_SOURCE
+
+
+
+ ER_FOREIGN_DATA_SOURCE_DOESNT_EXIST
+
+
+
+ ER_FOREIGN_DATA_STRING_INVALID_CANT_CREATE
+
+
+
+ ER_FOREIGN_DATA_STRING_INVALID
+
+
+
+ ER_CANT_CREATE_FEDERATED_TABLE
+
+
+
+ ER_TRG_IN_WRONG_SCHEMA
+
+
+
+ ER_STACK_OVERRUN_NEED_MORE
+
+
+
+ ER_TOO_LONG_BODY
+
+
+
+ ER_WARN_CANT_DROP_DEFAULT_KEYCACHE
+
+
+
+ ER_TOO_BIG_DISPLAYWIDTH
+
+
+
+ ER_XAER_DUPID
+
+
+
+ ER_DATETIME_FUNCTION_OVERFLOW
+
+
+
+ ER_CANT_UPDATE_USED_TABLE_IN_SF_OR_TRG
+
+
+
+ ER_VIEW_PREVENT_UPDATE
+
+
+
+ ER_PS_NO_RECURSION
+
+
+
+ ER_SP_CANT_SET_AUTOCOMMIT
+
+
+
+ ER_MALFORMED_DEFINER
+
+
+
+ ER_VIEW_FRM_NO_USER
+
+
+
+ ER_VIEW_OTHER_USER
+
+
+
+ ER_NO_SUCH_USER
+
+
+
+ ER_FORBID_SCHEMA_CHANGE
+
+
+
+ ER_ROW_IS_REFERENCED_2
+
+
+
+ ER_NO_REFERENCED_ROW_2
+
+
+
+ ER_SP_BAD_VAR_SHADOW
+
+
+
+ ER_TRG_NO_DEFINER
+
+
+
+ ER_OLD_FILE_FORMAT
+
+
+
+ ER_SP_RECURSION_LIMIT
+
+
+
+ ER_SP_PROC_TABLE_CORRUPT
+
+
+
+ ER_SP_WRONG_NAME
+
+
+
+ ER_TABLE_NEEDS_UPGRADE
+
+
+
+ ER_SP_NO_AGGREGATE
+
+
+
+ ER_MAX_PREPARED_STMT_COUNT_REACHED
+
+
+
+ ER_VIEW_RECURSIVE
+
+
+
+ ER_NON_GROUPING_FIELD_USED
+
+
+
+ ER_TABLE_CANT_HANDLE_SPKEYS
+
+
+
+ ER_NO_TRIGGERS_ON_SYSTEM_SCHEMA
+
+
+
+ ER_REMOVED_SPACES
+
+
+
+ ER_AUTOINC_READ_FAILED
+
+
+
+ ER_USERNAME
+
+
+
+ ER_HOSTNAME
+
+
+
+ ER_WRONG_STRING_LENGTH
+
+
+
+ ER_NON_INSERTABLE_TABLE
+
+
+
+ ER_ADMIN_WRONG_MRG_TABLE
+
+
+
+ ER_TOO_HIGH_LEVEL_OF_NESTING_FOR_SELECT
+
+
+
+ ER_NAME_BECOMES_EMPTY
+
+
+
+ ER_AMBIGUOUS_FIELD_TERM
+
+
+
+ ER_FOREIGN_SERVER_EXISTS
+
+
+
+ ER_FOREIGN_SERVER_DOESNT_EXIST
+
+
+
+ ER_ILLEGAL_HA_CREATE_OPTION
+
+
+
+ ER_PARTITION_REQUIRES_VALUES_ERROR
+
+
+
+ ER_PARTITION_WRONG_VALUES_ERROR
+
+
+
+ ER_PARTITION_MAXVALUE_ERROR
+
+
+
+ ER_PARTITION_SUBPARTITION_ERROR
+
+
+
+ ER_PARTITION_SUBPART_MIX_ERROR
+
+
+
+ ER_PARTITION_WRONG_NO_PART_ERROR
+
+
+
+ ER_PARTITION_WRONG_NO_SUBPART_ERROR
+
+
+
+ ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR
+
+
+
+ ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR
+
+
+
+ ER_FIELD_NOT_FOUND_PART_ERROR
+
+
+
+ ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR
+
+
+
+ ER_INCONSISTENT_PARTITION_INFO_ERROR
+
+
+
+ ER_PARTITION_FUNC_NOT_ALLOWED_ERROR
+
+
+
+ ER_PARTITIONS_MUST_BE_DEFINED_ERROR
+
+
+
+ ER_RANGE_NOT_INCREASING_ERROR
+
+
+
+ ER_INCONSISTENT_TYPE_OF_FUNCTIONS_ERROR
+
+
+
+ ER_MULTIPLE_DEF_CONST_IN_LIST_PART_ERROR
+
+
+
+ ER_PARTITION_ENTRY_ERROR
+
+
+
+ ER_MIX_HANDLER_ERROR
+
+
+
+ ER_PARTITION_NOT_DEFINED_ERROR
+
+
+
+ ER_TOO_MANY_PARTITIONS_ERROR
+
+
+
+ ER_SUBPARTITION_ERROR
+
+
+
+ ER_CANT_CREATE_HANDLER_FILE
+
+
+
+ ER_BLOB_FIELD_IN_PART_FUNC_ERROR
+
+
+
+ ER_UNIQUE_KEY_NEED_ALL_FIELDS_IN_PF
+
+
+
+ ER_NO_PARTS_ERROR
+
+
+
+ ER_PARTITION_MGMT_ON_NONPARTITIONED
+
+
+
+ ER_FOREIGN_KEY_ON_PARTITIONED
+
+
+
+ ER_DROP_PARTITION_NON_EXISTENT
+
+
+
+ ER_DROP_LAST_PARTITION
+
+
+
+ ER_COALESCE_ONLY_ON_HASH_PARTITION
+
+
+
+ ER_REORG_HASH_ONLY_ON_SAME_NO
+
+
+
+ ER_REORG_NO_PARAM_ERROR
+
+
+
+ ER_ONLY_ON_RANGE_LIST_PARTITION
+
+
+
+ ER_ADD_PARTITION_SUBPART_ERROR
+
+
+
+ ER_ADD_PARTITION_NO_NEW_PARTITION
+
+
+
+ ER_COALESCE_PARTITION_NO_PARTITION
+
+
+
+ ER_REORG_PARTITION_NOT_EXIST
+
+
+
+ ER_SAME_NAME_PARTITION
+
+
+
+ ER_NO_BINLOG_ERROR
+
+
+
+ ER_CONSECUTIVE_REORG_PARTITIONS
+
+
+
+ ER_REORG_OUTSIDE_RANGE
+
+
+
+ ER_PARTITION_FUNCTION_FAILURE
+
+
+
+ ER_PART_STATE_ERROR
+
+
+
+ ER_LIMITED_PART_RANGE
+
+
+
+ ER_PLUGIN_IS_NOT_LOADED
+
+
+
+ ER_WRONG_VALUE
+
+
+
+ ER_NO_PARTITION_FOR_GIVEN_VALUE
+
+
+
+ ER_FILEGROUP_OPTION_ONLY_ONCE
+
+
+
+ ER_CREATE_FILEGROUP_FAILED
+
+
+
+ ER_DROP_FILEGROUP_FAILED
+
+
+
+ ER_TABLESPACE_AUTO_EXTEND_ERROR
+
+
+
+ ER_WRONG_SIZE_NUMBER
+
+
+
+ ER_SIZE_OVERFLOW_ERROR
+
+
+
+ ER_ALTER_FILEGROUP_FAILED
+
+
+
+ ER_BINLOG_ROW_LOGGING_FAILED
+
+
+
+ ER_BINLOG_ROW_WRONG_TABLE_DEF
+
+
+
+ ER_BINLOG_ROW_RBR_TO_SBR
+
+
+
+ ER_EVENT_ALREADY_EXISTS
+
+
+
+ ER_EVENT_STORE_FAILED
+
+
+
+ ER_EVENT_DOES_NOT_EXIST
+
+
+
+ ER_EVENT_CANT_ALTER
+
+
+
+ ER_EVENT_DROP_FAILED
+
+
+
+ ER_EVENT_INTERVAL_NOT_POSITIVE_OR_TOO_BIG
+
+
+
+ ER_EVENT_ENDS_BEFORE_STARTS
+
+
+
+ ER_EVENT_EXEC_TIME_IN_THE_PAST
+
+
+
+ ER_EVENT_OPEN_TABLE_FAILED
+
+
+
+ ER_EVENT_NEITHER_M_EXPR_NOR_M_AT
+
+
+
+ ER_COL_COUNT_DOESNT_MATCH_CORRUPTED
+
+
+
+ ER_CANNOT_LOAD_FROM_TABLE
+
+
+
+ ER_EVENT_CANNOT_DELETE
+
+
+
+ ER_EVENT_COMPILE_ERROR
+
+
+
+ ER_EVENT_SAME_NAME
+
+
+
+ ER_EVENT_DATA_TOO_LONG
+
+
+
+ ER_DROP_INDEX_FK
+
+
+
+ ER_WARN_DEPRECATED_SYNTAX_WITH_VER
+
+
+
+ ER_CANT_WRITE_LOCK_LOG_TABLE
+
+
+
+ ER_CANT_LOCK_LOG_TABLE
+
+
+
+ ER_FOREIGN_DUPLICATE_KEY
+
+
+
+ ER_COL_COUNT_DOESNT_MATCH_PLEASE_UPDATE
+
+
+
+ ER_TEMP_TABLE_PREVENTS_SWITCH_OUT_OF_RBR
+
+
+
+ ER_STORED_FUNCTION_PREVENTS_SWITCH_BINLOG_FORMAT
+
+
+
+ ER_NDB_CANT_SWITCH_BINLOG_FORMAT
+
+
+
+ ER_PARTITION_NO_TEMPORARY
+
+
+
+ ER_PARTITION_CONST_DOMAIN_ERROR
+
+
+
+ ER_PARTITION_FUNCTION_IS_NOT_ALLOWED
+
+
+
+ ER_DDL_LOG_ERROR
+
+
+
+ ER_NULL_IN_VALUES_LESS_THAN
+
+
+
+ ER_WRONG_PARTITION_NAME
+
+
+
+ ER_CANT_CHANGE_TRANSACTION_ISOLATION
+
+
+
+ ER_DUP_ENTRY_AUTOINCREMENT_CASE
+
+
+
+ ER_EVENT_MODIFY_QUEUE_ERROR
+
+
+
+ ER_EVENT_SET_VAR_ERROR
+
+
+
+ ER_PARTITION_MERGE_ERROR
+
+
+
+ ER_CANT_ACTIVATE_LOG
+
+
+
+ ER_RBR_NOT_AVAILABLE
+
+
+
+ ER_BASE64_DECODE_ERROR
+
+
+
+ ER_EVENT_RECURSION_FORBIDDEN
+
+
+
+ ER_EVENTS_DB_ERROR
+
+
+
+ ER_ONLY_INTEGERS_ALLOWED
+
+
+
+ ER_UNSUPORTED_LOG_ENGINE
+
+
+
+ ER_BAD_LOG_STATEMENT
+
+
+
+ ER_CANT_RENAME_LOG_TABLE
+
+
+
+ ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT
+
+
+
+ ER_WRONG_PARAMETERS_TO_NATIVE_FCT
+
+
+
+ ER_WRONG_PARAMETERS_TO_STORED_FCT
+
+
+
+ ER_NATIVE_FCT_NAME_COLLISION
+
+
+
+ ER_DUP_ENTRY_WITH_KEY_NAME
+
+
+
+ ER_BINLOG_PURGE_EMFILE
+
+
+
+ ER_EVENT_CANNOT_CREATE_IN_THE_PAST
+
+
+
+ ER_EVENT_CANNOT_ALTER_IN_THE_PAST
+
+
+
+ ER_REPLICA_INCIDENT
+
+
+
+ ER_NO_PARTITION_FOR_GIVEN_VALUE_SILENT
+
+
+
+ ER_BINLOG_UNSAFE_STATEMENT
+
+
+
+ ER_REPLICA_FATAL_ERROR
+
+
+
+ ER_REPLICA_RELAY_LOG_READ_FAILURE
+
+
+
+ ER_REPLICA_RELAY_LOG_WRITE_FAILURE
+
+
+
+ ER_REPLICA_CREATE_EVENT_FAILURE
+
+
+
+ ER_REPLICA_SOURCE_COM_FAILURE
+
+
+
+ ER_BINLOG_LOGGING_IMPOSSIBLE
+
+
+
+ ER_VIEW_NO_CREATION_CTX
+
+
+
+ ER_VIEW_INVALID_CREATION_CTX
+
+
+
+ ER_SR_INVALID_CREATION_CTX
+
+
+
+ ER_TRG_CORRUPTED_FILE
+
+
+
+ ER_TRG_NO_CREATION_CTX
+
+
+
+ ER_TRG_INVALID_CREATION_CTX
+
+
+
+ ER_EVENT_INVALID_CREATION_CTX
+
+
+
+ ER_TRG_CANT_OPEN_TABLE
+
+
+
+ ER_CANT_CREATE_SROUTINE
+
+
+
+ ER_REPLICA_AMBIGOUS_EXEC_MODE
+
+
+
+ ER_NO_FORMAT_DESCRIPTION_EVENT_BEFORE_BINLOG_STATEMENT
+
+
+
+ ER_REPLICA_CORRUPT_EVENT
+
+
+
+ ER_LOAD_DATA_INVALID_COLUMN
+
+
+
+ ER_LOG_PURGE_NO_FILE
+
+
+
+ ER_XA_RBTIMEOUT
+
+
+
+ ER_XA_RBDEADLOCK
+
+
+
+ ER_NEED_REPREPARE
+
+
+
+ ER_DELAYED_NOT_SUPPORTED
+
+
+
+ WARN_NO_SOURCE_INFO
+
+
+
+ WARN_OPTION_IGNORED
+
+
+
+ WARN_PLUGIN_DELETE_BUILTIN
+
+
+
+ WARN_PLUGIN_BUSY
+
+
+
+ ER_VARIABLE_IS_READONLY
+
+
+
+ ER_WARN_ENGINE_TRANSACTION_ROLLBACK
+
+
+
+ ER_REPLICA_HEARTBEAT_FAILURE
+
+
+
+ ER_REPLICA_HEARTBEAT_VALUE_OUT_OF_RANGE
+
+
+
+ ER_NDB_REPLICATION_SCHEMA_ERROR
+
+
+
+ ER_CONFLICT_FN_PARSE_ERROR
+
+
+
+ ER_EXCEPTIONS_WRITE_ERROR
+
+
+
+ ER_TOO_LONG_TABLE_COMMENT
+
+
+
+ ER_TOO_LONG_FIELD_COMMENT
+
+
+
+ ER_FUNC_INEXISTENT_NAME_COLLISION
+
+
+
+ ER_DATABASE_NAME
+
+
+
+ ER_TABLE_NAME
+
+
+
+ ER_PARTITION_NAME
+
+
+
+ ER_SUBPARTITION_NAME
+
+
+
+ ER_TEMPORARY_NAME
+
+
+
+ ER_RENAMED_NAME
+
+
+
+ ER_TOO_MANY_CONCURRENT_TRXS
+
+
+
+ WARN_NON_ASCII_SEPARATOR_NOT_IMPLEMENTED
+
+
+
+ ER_DEBUG_SYNC_TIMEOUT
+
+
+
+ ER_DEBUG_SYNC_HIT_LIMIT
+
+
+
+ ER_ERROR_LAST
+
+
+
+ ER_CLIENT_INTERACTION_TIMEOUT
+
+
+
+ WriteInteger
+
+
+
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ Represents a parameter to a , This class cannot be inherited.
+
+
+ Parameter names are not case sensitive.
+ You can read more about it here.
+
+
+
+
+ Initializes a new instance of the class with the parameter name, the , the size, and the source column name.
+
+ The name of the parameter to map.
+ One of the values.
+ The length of the parameter.
+ The name of the source column.
+
+
+
+ Initializes a new instance of the class with the parameter name and a value of the new MySqlParameter.
+
+ The name of the parameter to map.
+ An that is the value of the .
+
+
+
+ Initializes a new instance of the class with the parameter name and the data type.
+
+ The name of the parameter to map.
+ One of the values.
+
+
+
+ Initializes a new instance of the class with the parameter name, the , and the size.
+
+ The name of the parameter to map.
+ One of the values.
+ The length of the parameter.
+
+
+
+ Initializes a new instance of the class with the parameter name, the type of the parameter, the size of the parameter, a , the precision of the parameter, the scale of the parameter, the source column, a to use, and the value of the parameter.
+
+ The name of the parameter to map.
+ One of the values.
+ The length of the parameter.
+ One of the values.
+ true if the value of the field can be null, otherwise false.
+ The total number of digits to the left and right of the decimal point to which is resolved.
+ The total number of decimal places to which is resolved.
+ The name of the source column.
+ One of the values.
+ An that is the value of the .
+
+
+
+
+ Gets or sets a value indicating whether the parameter is input-only, output-only, bidirectional, or a stored procedure return value parameter.
+ As of MySql version 4.1 and earlier, input-only is the only valid choice.
+
+
+
+
+ Gets or sets a value indicating whether the parameter accepts null values.
+
+
+
+
+ Gets or sets the of the parameter.
+
+
+
+
+ Gets or sets the maximum number of digits used to represent the property.
+
+
+
+
+ Gets or sets the number of decimal places to which is resolved.
+
+
+
+
+ Gets or sets the maximum size, in bytes, of the data within the column.
+
+
+
+
+ Gets or sets the value of the parameter.
+
+
+
+
+ Returns the possible values for this parameter if this parameter is of type
+ SET or ENUM. Returns null otherwise.
+
+
+
+
+ Gets or sets the name of the source column that is mapped to the and used for loading or returning the .
+
+
+
+
+ Sets or gets a value which indicates whether the source column is nullable.
+ This allows to correctly generate Update statements
+ for nullable columns.
+
+
+
+
+ Gets or sets the of the parameter.
+
+
+
+
+ Gets or sets the value to use when loading .
+
+
+
+
+ Clones this object.
+
+ An object that is a clone of this object.
+
+
+
+ Overridden. Gets a string containing the .
+
+
+
+
+
+ Resets the DbType property to its original settings.
+
+
+
+
+ Represents a collection of parameters relevant to a
+ as well as their respective mappings to columns in a . This class cannot be inherited.
+
+
+ The number of the parameters in the collection must be equal to the number of
+ parameter placeholders within the command text, or an exception will be generated.
+
+
+
+
+ Gets the number of MySqlParameter objects in the collection.
+
+
+
+
+ Gets a value that indicates whether the object has a fixed size.
+
+
+
+
+ Gets a value that indicates whether the object is read-only.
+
+
+
+
+ Gets a value that indicates whether the object is synchronized.
+
+
+
+
+ Gets the at the specified index.
+
+ Gets the with a specified attribute.
+ [C#] In C#, this property is the indexer for the class.
+
+
+
+
+ Gets the with the specified name.
+
+
+
+
+ Adds a to the with the parameter name, the data type, the column length, and the source column name.
+
+ The name of the parameter.
+ One of the values.
+ The length of the column.
+ The name of the source column.
+ The newly added object.
+
+
+
+ Adds the specified object to the .
+
+ The to add to the collection.
+ The newly added object.
+
+
+
+ Adds a parameter and its value.
+
+ The name of the parameter.
+ The value of the parameter.
+ A object representing the provided values.
+
+
+
+ Adds a to the given the parameter name and the data type.
+
+ The name of the parameter.
+ One of the values.
+ The newly added object.
+
+
+
+ Adds a to the with the parameter name, the data type, and the column length.
+
+ The name of the parameter.
+ One of the values.
+ The length of the column.
+ The newly added object.
+
+
+
+ Removes all items from the collection.
+
+
+
+
+ Gets the location of the in the collection with a specific parameter name.
+
+ The name of the object to retrieve.
+ The zero-based location of the in the collection.
+
+
+
+ Gets the location of a in the collection.
+
+ The object to locate.
+ The zero-based location of the in the collection.
+ Gets the location of a in the collection.
+
+
+
+ This method will update all the items in the index hashes when
+ we insert a parameter somewhere in the middle
+
+
+
+
+
+
+ Adds an array of values to the end of the .
+
+
+
+
+
+ Retrieve the parameter with the given name.
+
+
+
+
+
+
+ Adds the specified object to the .
+
+ The to add to the collection.
+ The index of the new object.
+
+
+
+ Gets a value indicating whether a with the specified parameter name exists in the collection.
+
+ The name of the object to find.
+ true if the collection contains the parameter; otherwise, false.
+
+
+
+ Gets a value indicating whether a MySqlParameter exists in the collection.
+
+ The value of the object to find.
+ true if the collection contains the object; otherwise, false.
+ Gets a value indicating whether a exists in the collection.
+
+
+
+ Copies MySqlParameter objects from the MySqlParameterCollection to the specified array.
+
+
+
+
+
+
+ Returns an enumerator that iterates through the .
+
+
+
+
+
+ Inserts a MySqlParameter into the collection at the specified index.
+
+
+
+
+
+
+ Removes the specified MySqlParameter from the collection.
+
+
+
+
+
+ Removes the specified from the collection using the parameter name.
+
+ The name of the object to retrieve.
+
+
+
+ Removes the specified from the collection using a specific index.
+
+ The zero-based index of the parameter.
+ Removes the specified from the collection.
+
+
+
+ Gets an object that can be used to synchronize access to the
+ .
+
+
+
+
+ Summary description for MySqlPool.
+
+
+
+
+ It is assumed that this property will only be used from inside an active
+ lock.
+
+
+
+
+ Indicates whether this pool is being cleared.
+
+
+
+
+ It is assumed that this method is only called from inside an active lock.
+
+
+
+
+ It is assumed that this method is only called from inside an active lock.
+
+
+
+
+ Removes a connection from the in use pool. The only situations where this method
+ would be called are when a connection that is in use gets some type of fatal exception
+ or when the connection is being returned to the pool and it's too old to be
+ returned.
+
+
+
+
+
+ Clears this pool of all idle connections and marks this pool and being cleared
+ so all other connections are closed when they are returned.
+
+
+
+
+ Remove expired drivers from the idle pool
+
+
+
+ Closing driver is a potentially lengthy operation involving network
+ IO. Therefore we do not close expired drivers while holding
+ idlePool.SyncRoot lock. We just remove the old drivers from the idle
+ queue and return them to the caller. The caller will need to close
+ them (or let GC close them)
+
+
+
+
+ Summary description for MySqlPoolManager.
+
+
+
+
+ Queue of demoted hosts.
+
+
+
+
+ List of hosts that will be attempted to connect to.
+
+
+
+
+ Timer to be used when a host have been demoted.
+
+
+
+
+ Remove drivers that have been idle for too long.
+
+
+
+
+ Remove hosts that have been on the demoted list for more
+ than 120,000 milliseconds and add them to the available hosts list.
+
+
+
+
+ Provides a class capable of executing a SQL script containing
+ multiple SQL statements including CREATE PROCEDURE statements
+ that require changing the delimiter
+
+
+
+
+ Handles the event raised whenever a statement is executed.
+
+
+
+
+ Handles the event raised whenever an error is raised by the execution of a script.
+
+
+
+
+ Handles the event raised whenever a script execution is finished.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+
+
+
+ Initializes a new instance of the
+ class.
+
+ The connection.
+
+
+
+ Initializes a new instance of the
+ class.
+
+ The query.
+
+
+
+ Initializes a new instance of the
+ class.
+
+ The connection.
+ The query.
+
+
+
+ Gets or sets the connection.
+
+ The connection.
+
+
+
+ Gets or sets the query.
+
+ The query.
+
+
+
+ Gets or sets the delimiter.
+
+ The delimiter.
+
+
+
+ Executes this instance.
+
+ The number of statements executed as part of the script.
+
+
+
+ Initiates the asynchronous execution of SQL statements.
+
+ The number of statements executed as part of the script inside.
+
+
+
+ Initiates the asynchronous execution of SQL statements.
+
+ The cancellation token.
+ The number of statements executed as part of the script inside.
+
+
+
+ Represents the method that will handle errors when executing MySQL statements.
+
+
+
+
+ Represents the method that will handle errors when executing MySQL scripts.
+
+
+
+
+ Sets the arguments associated to MySQL scripts.
+
+
+
+
+ Gets the statement text.
+
+ The statement text.
+
+
+
+ Gets the line.
+
+ The line.
+
+
+
+ Gets the position.
+
+ The position.
+
+
+
+ Sets the arguments associated to MySQL script errors.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The exception.
+
+
+
+ Gets the exception.
+
+ The exception.
+
+
+
+ Gets or sets a value indicating whether this is ignored.
+
+ true if ignore; otherwise, false.
+
+
+
+ Summary description for MySqlStream.
+
+
+
+
+ ReadPacket is called by NativeDriver to start reading the next
+ packet on the stream.
+
+
+
+
+ Reads the specified number of bytes from the stream and stores them at given
+ offset in the buffer.
+ Throws EndOfStreamException if not all bytes can be read.
+
+ Stream to read from
+ Array to store bytes read from the stream
+ The offset in buffer at which to begin storing the data read from the current stream.
+ Number of bytes to read
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ LoadPacket loads up and decodes the header of the incoming packet.
+
+
+
+
+ Traces information about the client execution.
+
+
+
+
+ Gets the list of trace listeners.
+
+
+
+
+ Gets or sets the switch to control tracing and debugging.
+
+
+
+
+ Specifies the types of warning flags.
+
+
+
+
+ No index exists.
+
+
+
+
+ Bad index exists.
+
+
+
+
+ Rows have been excluded from the result.
+
+
+
+
+ Columns have been excluded from the result.
+
+
+
+
+ Type conversions took place.
+
+
+
+
+ Specifies the event that triggered the trace.
+
+
+
+
+ A connection has been opened.
+
+
+
+
+ A connection has been closed.
+
+
+
+
+ A query has been executed.
+
+
+
+
+ Data has been retrieved from the resultset.
+
+
+
+
+ Data retrieval has ended.
+
+
+
+
+ Query execution has ended.
+
+
+
+
+ The statement to be executed has been created.
+
+
+
+
+ The statement has been executed.
+
+
+
+
+ The statement is no longer required.
+
+
+
+
+ The query provided is of a nonquery type.
+
+
+
+
+ Usage advisor warnings have been requested.
+
+
+
+
+ Noncritical problem.
+
+
+
+
+ An error has been raised during data retrieval.
+
+
+
+
+ The query has been normalized.
+
+
+
+
+ Represents a SQL transaction to be made in a MySQL database. This class cannot be inherited.
+
+
+ The application creates a object by calling
+ on the object. All subsequent operations associated with the
+ transaction (for example, committing or aborting the transaction), are performed on the
+ object.
+
+
+ The following example creates a and a .
+ It also demonstrates how to use the ,
+ , and methods.
+
+ public void RunTransaction(string myConnString)
+ {
+ MySqlConnection myConnection = new MySqlConnection(myConnString);
+ myConnection.Open();
+ MySqlCommand myCommand = myConnection.CreateCommand();
+ MySqlTransaction myTrans;
+ // Start a local transaction
+ myTrans = myConnection.BeginTransaction();
+ // Must assign both transaction object and connection
+ // to Command object for a pending local transaction
+ myCommand.Connection = myConnection;
+ myCommand.Transaction = myTrans;
+
+ try
+ {
+ myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (100, 'Description')";
+ myCommand.ExecuteNonQuery();
+ myCommand.CommandText = "Insert into Region (RegionID, RegionDescription) VALUES (101, 'Description')";
+ myCommand.ExecuteNonQuery();
+ myTrans.Commit();
+ Console.WriteLine("Both records are written to database.");
+ }
+ catch(Exception e)
+ {
+ try
+ {
+ myTrans.Rollback();
+ }
+ catch (MySqlException ex)
+ {
+ if (myTrans.Connection != null)
+ {
+ Console.WriteLine("An exception of type " + ex.GetType() +
+ " was encountered while attempting to roll back the transaction.");
+ }
+ }
+
+ Console.WriteLine("An exception of type " + e.GetType() +
+ " was encountered while inserting the data.");
+ Console.WriteLine("Neither record was written to database.");
+ }
+ finally
+ {
+ myConnection.Close();
+ }
+ }
+
+
+
+
+
+ Gets the object associated with the transaction, or a null reference (Nothing in Visual Basic) if the transaction is no longer valid.
+
+ The object associated with this transaction.
+
+ A single application may have multiple database connections, each
+ with zero or more transactions. This property enables you to
+ determine the connection object associated with a particular
+ transaction created by .
+
+
+
+
+ Specifies the for this transaction.
+
+
+ The for this transaction. The default is ReadCommitted.
+
+
+ Parallel transactions are not supported. Therefore, the IsolationLevel
+ applies to the entire transaction.
+
+
+
+
+ Gets the object associated with the transaction,
+ or a null reference if the transaction is no longer valid.
+
+
+
+
+ Releases the unmanaged resources used by the
+ and optionally releases the managed resources
+
+ If true, this method releases all resources held by any managed objects that
+ this references.
+
+
+
+ Commits the database transaction.
+
+
+ The method is equivalent to the MySQL SQL statement COMMIT.
+
+
+
+
+ Asynchronously commits the database transaction.
+
+
+ A task representing the asynchronous operation.
+
+
+
+ Rolls back a transaction from a pending state.
+
+
+ The method is equivalent to the MySQL statement ROLLBACK.
+ The transaction can only be rolled back from a pending state
+ (after BeginTransaction has been called, but before Commit is
+ called).
+
+
+
+
+ Asynchronously rolls back a transaction from a pending state.
+
+ The cancellation token.
+ A task representing the asynchronous operation.
+
+
+
+ Summary description for Driver.
+
+
+
+
+ Sets the current database for the this connection
+
+
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ Return the appropriate set of connection flags for our
+ server capabilities and our user requested options.
+
+
+
+
+ Query is the method that is called to send all queries to the server
+
+
+
+
+ Verify that the file to upload is in a valid directory
+ according to the safe path entered by a user under
+ "AllowLoadLocalInfileInPath" connection option.
+
+ File to validate against the safe path.
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ Sends the specified file to the server.
+ This supports the LOAD DATA LOCAL INFILE
+
+
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ FetchDataRow is the method that the data reader calls to see if there is another
+ row to fetch. In the non-prepared mode, it will simply read the next data packet.
+ In the prepared mode (statementId > 0), it will
+
+
+
+
+ Execution timeout, in milliseconds. When the accumulated time for network IO exceeds this value
+ TimeoutException is thrown. This timeout needs to be reset for every new command
+
+
+
+
+
+ Class that represents the response OK Packet
+ https://dev.mysql.com/doc/internals/en/packet-OK_Packet.html
+
+
+
+
+ Creates an instance of the OKPacket object with all of its metadata
+
+ The packet to parse
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ Add a session tracker to the list
+
+ Type of the session tracker
+ Name of the element changed
+ Value of the changed system variable (only for SessionTrackType.SystemVariables; otherwise, null)
+
+
+
+ Summary description for PreparedStatement.
+
+
+
+
+ Prepares CommandText for use with the Prepare method
+
+ Command text stripped of all paramter names
+
+ Takes the output of TokenizeSql and creates a single string of SQL
+ that only contains '?' markers for each parameter. It also creates
+ the parameterMap array list that includes all the paramter names in the
+ order they appeared in the SQL
+
+
+
+
+ Splits the schema and the entity from a syntactically correct "spName";
+ if there's no schema, then schema will be an empty string.
+
+ string to inspect.
+ The schema.
+ The entity.
+
+
+
+ Obtains the dot index that separates the schema from the entity if there's one;
+ otherwise, returns -1. It expects a syntactically correct "spName".
+
+ string to inspect.
+ Value of the dot index.
+ The dot index.
+
+
+
+ Defines a replication configurarion element in the configuration file.
+
+
+
+
+ Gets a collection of objects representing the server groups.
+
+
+
+
+ Defines a replication server group in the configuration file.
+
+
+
+
+ Gets or sets the name of the replication server group configuration.
+
+
+
+
+ Gets or sets the group type of the replication server group configuration.
+
+
+
+
+ Gets or sets the number of seconds to wait for retry.
+
+
+
+
+ Gets a collection of objects representing the
+ server configurations associated to this group configuration.
+
+
+
+
+ Defines a replication server in configuration file.
+
+
+
+
+ Gets or sets the name of the replication server configuration.
+
+
+
+
+ Gets or sets whether the replication server is configured as source.
+
+
+
+
+ Gets or sets whether the replication server is configured as source.
+
+
+
+
+ Gets or sets the connection string associated to this replication server.
+
+
+
+
+ Manager for Replication and Load Balancing features
+
+
+
+
+ Returns Replication Server Group List
+
+
+
+
+ Adds a Default Server Group to the list
+
+ Group name
+ Time between reconnections for failed servers
+ Replication Server Group added
+
+
+
+ Adds a Server Group to the list
+
+ Group name
+ ServerGroup type reference
+ Time between reconnections for failed servers
+ Server Group added
+
+
+
+ Gets the next server from a replication group
+
+ Group name
+ True if the server to return must be a source
+ Replication Server defined by the Load Balancing plugin
+
+
+
+ Gets a Server Group by name
+
+ Group name
+ Server Group if found, otherwise throws an MySqlException
+
+
+
+ Validates if the replication group name exists
+
+ Group name to validate
+ true if the replication group name is found; otherwise, false
+
+
+
+ Assigns a new server driver to the connection object
+
+ Group name
+ True if the server connection to assign must be a source
+ MySqlConnection object where the new driver will be assigned
+ Boolean that indicates if the function will be executed asynchronously.
+ the cancellation token.
+
+
+
+ Class that implements Round Robing Load Balancing technique.
+
+
+
+
+ Gets an available server based on Round Robin load balancing.
+
+ Flag indicating if the server to return must be a source.
+ A object representing the next available server.
+
+
+
+ Represents a server in a Replication environment.
+
+
+
+
+ Gets the server name.
+
+
+
+
+ Gets a value indicating whether the server is source or replica.
+
+
+
+
+ Gets a value indicating whether the server is source or replica.
+
+
+
+
+ Gets the connection string used to connect to the server.
+
+
+
+
+ Gets a flag indicating if the server is available to be considered in load balancing.
+
+
+
+
+ Base class used to implement load balancing features.
+
+
+
+
+ List of servers available for replication.
+
+
+
+ The group name.
+ The number of seconds to perform a retry.
+
+
+
+ Gets the group name.
+
+
+
+
+ Gets the retry time between connections to failed servers.
+
+
+
+
+ Gets the server list in the group.
+
+
+
+
+ Adds a server into the group.
+
+ The server name.
+ A flag indicating if the server to add is source or replica.
+ The connection string used by this server.
+ A object representing the recently added object.
+
+
+
+ Removes a server from the group.
+
+ The server name.
+
+
+
+ Gets a server by name.
+
+ The server name.
+ The replication server.
+
+
+
+ Must be implemented. Defines the next server for a custom load balancing implementation.
+
+ Defines if the server to return is a source or any.
+ The next server based on the load balancing implementation.
+ Null if no available server is found.
+
+
+
+
+ Defines the next server for a custom load balancing implementation.
+
+ Defines if the server to return is a source or any.
+ Currently not being used.
+ The next server based on the load balancing implementation.
+ Null if no available server is found.
+
+
+
+
+ Handles a failed connection to a server.
+
+ The failed server.
+ This method can be overrided to implement a custom failover handling.
+
+
+
+ Handles a failed connection to a server.
+
+ The failed server.
+ The exception that caused the failover.
+
+
+
+ return the ordinal for the given column name
+
+
+
+
+
+
+ Retrieve the value as the given column index
+
+ The column value to retrieve
+ The value as the given column
+
+
+
+ Closes the current resultset, dumping any data still on the wire
+
+
+
+
+ Loads the column metadata for the current resultset
+
+
+
+
+ Represents a schema and its contents.
+
+
+
+
+ Gets or sets the name of the schema.
+
+
+
+
+ Gets the list of columns in the schema.
+
+
+
+
+ Gets the list of rows in the schema.
+
+
+
+
+ Represents a row within a schema.
+
+
+
+
+ Represents a column within a schema.
+
+
+
+
+ The name of the column.
+
+
+
+
+ The type of the column.
+
+
+
+
+ GetForeignKeysOnTable retrieves the foreign keys on the given table.
+ Since MySQL supports foreign keys on versions prior to 5.0, we can't use
+ information schema. MySQL also does not include any type of SHOW command
+ for foreign keys so we have to resort to use SHOW CREATE TABLE and parsing
+ the output.
+
+ The table to store the key info in.
+ The table to get the foeign key info for.
+ Only get foreign keys that match this name.
+ Should column information be included in the table.
+ Boolean that indicates if the function will be executed asynchronously.
+ The cancellation token.
+
+
+
+ Builds the initial part of the COM_QUERY packet
+
+ Collection of attributes
+ A
+ Boolean that indicates if the function will be executed asynchronously.
+
+
+
+ Serializes the given parameter to the given memory stream
+
+
+ This method is called by PrepareSqlBuffers to convert the given
+ parameter to bytes and write those bytes to the given memory stream.
+
+
+ True if the parameter was successfully serialized, false otherwise.
+
+
+
+ Summary description for StoredProcedure.
+
+
+
+
+ Verify if the string passed as argument is syntactically correct.
+
+ String to be analyzed
+ true if is correct; otherwise, false.
+
+
+
+ Defines the basic operations to be performed on the table cache.
+
+
+
+
+ The maximum age allowed for cache entries.
+
+
+
+
+ Adds the given command and result set to the cache.
+
+ The command to store in the cache.
+ The resultset associated to the stored command.
+
+
+
+ Retrieves the specified command from the cache.
+
+ The command to retrieve.
+ The allowed age for the cache entry.
+
+
+
+
+ Removes the specified command from the cache.
+
+ The command to remove from the cache.
+
+
+
+ Clears the cache.
+
+
+
+
+ Removes cache entries older than the value defined by .
+
+
+
+
+ Stream that supports timeout of IO operations.
+ This class is used is used to support timeouts for SQL command, where a
+ typical operation involves several network reads/writes.
+ Timeout here is defined as the accumulated duration of all IO operations.
+
+
+
+
+ Construct a TimedStream
+
+ Undelying stream
+
+
+
+ Figure out whether it is necessary to reset timeout on stream.
+ We track the current value of timeout and try to avoid
+ changing it too often, because setting Read/WriteTimeout property
+ on network stream maybe a slow operation that involves a system call
+ (setsockopt). Therefore, we allow a small difference, and do not
+ reset timeout if current value is slightly greater than the requested
+ one (within 0.1 second).
+
+
+
+
+ Common handler for IO exceptions.
+ Resets timeout to infinity if timeout exception is
+ detected and stops the times.
+
+ original exception
+
+
+
+ Removes the outer backticks and replace the double-backticks to single-backtick
+ of inside the quotedString.
+
+ The string to unquote.
+
+
+
+
+ Gets the length size (in bytes) of a string.
+
+ length of string.
+ Number of bytes needed.
+
+
+
+ Defines the type of the column.
+
+
+
+
+ A reference struct representing a statement contained within a object
+
+
+
+
+ WebAuthn §6.1 https://www.w3.org/TR/webauthn-1/#sec-authenticator-data
+ Gets the authenticator data for the assertion statement.
+
+
+
+
+ Gets the authenticator data length for the assertion statement.
+
+
+
+
+ Gets the ID for this assertion statement
+
+
+
+
+ Gets the signature for this assertion statement
+
+
+
+
+ Gets the signature length for this assertion statement
+
+
+
+
+ Creates an object for holding data about a given assertion. In FIDO2, an assertion
+ is proof that the authenticator being used has knowledge of the private key associated
+ with the public key that the other party is in posession of.
+
+
+
+
+ Default Constructor
+
+
+
+
+
+ Finalizer
+
+
+
+
+ Gets or sets the hash of the client data object that the assertion is based on.
+
+ Thrown if an error occurs while setting the hash
+
+
+
+ Gets or sets the relying party that requested this assertion
+
+ Thrown if an error occurs while setting the relying party
+
+
+
+ Adds an allowed credential to this assertion. If used, only credential objects
+ with the IDs added via this method will be considered when making an assertion.
+
+ The ID of the credential to add to the whitelist
+ Thrown if an error occurs while adding the credential
+
+
+
+ Cast operator for using this object as a native handle
+
+ The object to use
+
+
+
+ Gets the assertion statement at the index provided.
+
+ The index of the assertion statement to retrieve
+ The assertion statement object
+ The index is not in the range [0, count)
+
+
+
+ Gets the number of assertions contained in the authentication device.
+
+ The number of assertions contained in the authentication device.
+
+
+
+ Default constructor
+
+
+
+
+
+ Finalizer
+
+
+
+
+ Opens the device at the given path.
+
+ The path of the device
+ Thrown if an error occurs while opening the device
+
+
+
+ Closes the device, preventing further use
+
+ Thrown if an error occurs while closing
+
+
+
+ Determines whether this device supports CTAP 2.1 Credential Management.
+
+
+
+
+ Uses the device to generate an assertion
+
+ The assertion object with its input properties properly set
+ Thrown if an error occurs while generating the assertion
+
+
+
+ A class representing external info about a particular FIDO capable device
+
+
+
+
+ Gets the manufacturer of the device
+
+
+
+
+ Gets the path of the device (for use in )
+
+
+
+
+ Gets the product ID of the device
+
+
+
+
+ Gets a string representation of the product ID
+
+
+
+
+ Gets the vendor ID of the device
+
+
+
+
+ Finalizer
+
+
+
+
+ P/Invoke methods
+
+
+
+
+ The fido_init() function initialises the libfido2 library.
+ Its invocation must precede that of any other libfido2 function.
+ If FIDO_DEBUG is set in flags, then debug output will be emitted by libfido2 on stderr.
+ Alternatively, the FIDO_DEBUG environment variable may be set.
+
+ The flags to use during initialization
+
+
+
+ Returns a pointer to a newly allocated, empty fido_dev_t type.
+ If memory cannot be allocated, null is returned.
+
+ A newly allocated, empty fido_dev_t type
+
+
+
+ Releases the memory backing *dev_p, where *dev_p must have been previously allocated by .
+ On return, *dev_p is set to null. Either dev_p or *dev_p may be null, in which case fido_dev_free() is a NOP.
+
+
+
+
+
+ Closes the device represented by dev. If dev is already closed, this is a NOP.
+
+ The device to close
+ on success, anything else on failure
+
+
+
+ Opens the device pointed to by path, where dev is a freshly allocated or otherwise closed fido_dev_t.
+
+ The device handle to store the result
+ The unique path to the device
+ on success, anything else on failure
+
+
+
+ Asks the FIDO device represented by dev for an assertion according to the following parameters defined in assert:
+ relying party ID;
+ client data hash;
+ list of allowed credential IDs;
+ user presence and user verification attributes.
+ See fido_assert_set(3) for information on how these values are set.
+ If a PIN is not needed to authenticate the request against dev, then pin may be NULL.
+ Otherwise pin must point to a NUL-terminated UTF-8 string.
+ Please note that fido_dev_get_assert() is synchronous and will block if necessary.
+
+ The device to use for generation
+ The assert to use for generation
+ The pin of the device
+ on success, anything else on failure
+
+
+
+ Returns if supports CTAP 2.1 Credential Management.
+
+ The device to check.
+ if supports CTAP 2.1 Credential Management; otherwise, .
+
+
+
+ Returns a pointer to a newly allocated, empty fido_dev_info_t type.
+ If memory cannot be allocated, null is returned.
+
+ A newly allocated, empty fido_dev_info_t type
+
+
+
+ Returns a pointer to the path of di
+
+ The object to act on
+ A pointer to the path of di
+
+
+
+ Returns a pointer to the idx entry of di
+
+ The object to act on
+ The index of the object to retrieve
+ A pointer to the idx entry of di
+
+
+
+ Fills devlist with up to ilen FIDO devices found by the underlying operating system.
+ Currently only USB HID devices are supported.
+ The number of discovered devices is returned in olen, where olen is an addressable pointer.
+
+ The devlist pointer to store the result in
+ The number of entries that the list can hold
+ A pointer to where the number of entries that were written will be stored
+ on success, anything else on failure
+
+
+
+ Releases the memory backing *devlist_p, where *devlist_p must have been previously allocated by .
+ On return, *devlist_p is set to null. Either devlist_p or *devlist_p may be null, in which case fido_dev_info_free() is a NOP.
+
+
+ The number of entries this object was allocated to hold
+
+
+
+ Returns the vendor of the device
+
+ The object to act on
+ The vendor of the device
+
+
+
+ Returns the product of the device
+
+ The object to act on
+ The product of the device
+
+
+
+ Returns a pointer to the product string of di
+
+ The object to act on
+ A pointer to the product string of di
+
+
+
+ Returns a pointer to the manufacturer string of di
+
+ The object to act on
+ A pointer to the manufacturer string of di
+
+
+
+ Returns a pointer to a newly allocated, empty fido_assert_t type.
+ If memory cannot be allocated, null is returned
+
+ A newly allocated, empty fido_assert_t type
+
+
+
+ Releases the memory backing *assert_p, where *assert_p must have been previously allocated by .
+ On return, *assert_p is set to null. Either assert_p or *assert_p may be null, in which case fido_assert_free() is a NOP.
+
+ The object to free
+
+
+
+ Adds ptr to the list of credentials allowed in assert, where ptr points to a credential ID of len bytes.
+ A copy of ptr is made, and no references to the passed pointer are kept.
+ If this call fails, the existing list of allowed credentials is preserved.
+
+ The object to act on
+ A pointer to the ID of the credential to allow
+ The length of the data inside of
+
+
+
+
+ Set the client data hash of assert
+
+ The assertion object to act on
+ The client data hash to set
+ The length of the data in
+ on success, anything else on failure
+
+
+
+ Sets the relying party of assert
+
+ The assertion object to act on
+ The ID of the the relying party
+ on success, anything else on failure
+
+
+
+ Returns the length of the authenticator data of statement idx in assert
+
+ The assertion object to act on
+ The index to retrieve
+ The length of the authenticator data of statement idx in assert
+
+
+
+ Returns a pointer to the authenticator data of statement idx in assert
+
+ The assertion object to act on
+ The index to retrieve
+ A pointer to the authenticator data of statement idx in assert
+
+
+
+ Returns the length of the signature of statement idx in assert
+
+ The assertion object to act on
+ The index to retrieve
+ The length of the signature of statement idx in assert
+
+
+
+ Returns a pointer to the signature of statement idx in assert
+
+ The assertion object to act on
+ The index to retrieve
+ A pointer to the signatureof statement idx in assert
+
+
+
+ Returns the length of the ID of statement idx in assert
+
+ The assertion object to act on
+ The index to retrieve
+ The length of the ID of statement idx in assert
+
+
+
+ Returns a pointer to the ID of statement idx in assert.
+
+ The assertion object to act on.
+ The index to retrieve.
+ A pointer to the ID of statement idx in assert.
+
+
+
+ Returns the length of the client data hash of an assertion.
+
+ The assertion object to act on.
+ The length of the client data hash of statement idx of the assertion.
+
+
+
+ Returns a pointer to the client data hash of an assertion.
+
+ The assertion object to act on.
+ A pointer to the client data hash of the assertion.
+
+
+
+ Returns the number of statements in assertion.
+
+ The assertion object to act on.
+ The number of statements in assertion.
+
+
+
+ FIDO assertion handle
+
+
+
+
+ FIDO device handle
+
+
+
+
+ FIDO device info handle
+
+
+
+
+ Gets the global instance of this class as required by
+
+ The cookie to use when getting the global instance (ignored)
+ The global instance
+
+
+
+ Status codes as defined in Client to Authenticator Protocol (CTAP) standard
+ Error response values in the range between and are reserved for spec purposes.
+ Error response values in the range between and
+ may be used for vendor-specific implementations. All other response values are reserved for future use and may not be used.
+ These vendor specific error codes are not interoperable and the platform should treat these errors as any other unknown error codes.
+ Error response values in the range between and
+ may be used for extension-specific implementations.
+
+
+
+
+ Indicates successful response.
+
+
+
+
+ The command is not a valid CTAP command.
+
+
+
+
+ The command included an invalid parameter.
+
+
+
+
+ Invalid message or item length.
+
+
+
+
+ Invalid message sequencing.
+
+
+
+
+ Message timed out.
+
+
+
+
+ Channel busy.
+
+
+
+
+ Command requires channel lock.
+
+
+
+
+ Command not allowed on this cid.
+
+
+
+
+ Invalid/unexpected CBOR error.
+
+
+
+
+ Error when parsing CBOR.
+
+
+
+
+ Missing non-optional parameter.
+
+
+
+
+ Limit for number of items exceeded.
+
+
+
+
+ Unsupported extension.
+
+
+
+
+ Valid credential found in the exclude list.
+
+
+
+
+ Processing (Lengthy operation is in progress).
+
+
+
+
+ Credential not valid for the authenticator.
+
+
+
+
+ Authentication is waiting for user interaction.
+
+
+
+
+ Processing, lengthy operation is in progress.
+
+
+
+
+ No request is pending.
+
+
+
+
+ Authenticator does not support requested algorithm.
+
+
+
+
+ Not authorized for requested operation.
+
+
+
+
+ Internal key storage is full.
+
+
+
+
+ No outstanding operations.
+
+
+
+
+ Unsupported option.
+
+
+
+
+ Not a valid option for current operation.
+
+
+
+
+ Pending keep alive was cancelled.
+
+
+
+
+ No valid credentials provided.
+
+
+
+
+ Timeout waiting for user interaction.
+
+
+
+
+ Continuation command, such as, authenticatorGetNextAssertion not allowed.
+
+
+
+
+ PIN Invalid.
+
+
+
+
+ PIN Blocked.
+
+
+
+
+ PIN authentication,pinAuth, verification failed.
+
+
+
+
+ PIN authentication,pinAuth, blocked. Requires power recycle to reset.
+
+
+
+
+ No PIN has been set.
+
+
+
+
+ PIN is required for the selected operation.
+
+
+
+
+ PIN policy violation. Currently only enforces minimum length.
+
+
+
+
+ pinToken expired on authenticator.
+
+
+
+
+ Authenticator cannot handle this request due to memory constraints.
+
+
+
+
+ The current operation has timed out.
+
+
+
+
+ User presence is required for the requested operation.
+
+
+
+
+ Other unspecified error.
+
+
+
+
+ CTAP 2 spec last error.
+
+
+
+
+ Extension specific error.
+
+
+
+
+ Extension specific error.
+
+
+
+
+ Vendor specific error.
+
+
+
+
+ Vendor specific error.
+
+
+
+
+ An exception representing a return status that is non-successful according to the CTAP specification
+
+
+
+
+ The status code that was returned
+
+
+
+
+ Default constructor
+
+ The status code to use
+
+
+
+ An exception indicating that there was some problem with the FIDO2 device
+
+
+
+
+ The code returned from the device
+
+
+
+
+ Default constructor
+
+ The code to use
+
+
+
+ This class represent the function that should precede any invocation to libfido2 library.
+
+
+
+
+ GSS API constants
+
+
+
+
+ GSS_C_NT_HOSTBASED_SERVICE (1.2.840.113554.1.2.1.4)
+
+
+
+
+ GSS_KRB5_NT_PRINCIPAL_NAME (1.2.840.113554.1.2.2.1)
+
+
+
+
+ GSS_C_NT_USER_NAME (1.2.840.113554.1.2.1.1)
+
+
+
+
+ GSS_KRB5_MECH_OID_DESC (1.2.840.113554.1.2.2)
+
+
+
+
+ GSS_KRB5_MECH_OID_DESC Set
+
+
+
+
+ The GSSAPI mechanism.
+
+
+
+
+ Obtain credentials to be used to create a security context
+
+ username
+ password
+ host
+
+
+
+ Processes the challenge data.
+
+ A byte array containing the challenge data from the server
+ A byte array containing the response to be sent to the server
+
+
+
+ Security context already established.
+
+ A byte array containing the challenge data from the server
+ A non-null byte array containing the response to be sent to the server
+
+
+
+ Defines a security context
+
+
+
+
+ Sets the main properties to create and initiate a security context.
+
+ Service Principal Name.
+ Credentials.
+ Requested flags.
+
+
+
+ Initiate the security context
+
+ Challenge received by the server.
+ A byte array containing the response to be sent to the server
+
+
+
+ Unwrap a message.
+
+ Message acquired from the server.
+ Unwrapped message.
+
+
+
+ Wrap a message.
+
+ Message to be wrapped.
+ A byte array containing the wrapped message.
+
+
+
+ Allocate a clr byte array and copy the token data over
+
+ Buffer.
+ A byte array
+
+
+
+ Cleanups unmanaged resources
+
+
+
+
+ No flags provided
+
+
+
+
+ Delegates credentials to a remote peer. Do not delegate the credentials if the value is false.
+
+
+
+
+ Requests that the peer authenticate itself. If false, authenticate to the remote peer only.
+
+
+
+
+ Enables replay detection for messages protected with gss_wrap(3GSS) or gss_get_mic(3GSS). Do not attempt to detect replayed messages if false.
+
+
+
+
+ Enables detection of out-of-sequence protected messages. Do not attempt to detect out-of-sequence messages if false.
+
+
+
+
+ Requests that confidential service be made available by means of gss_wrap(3GSS). If false, no per-message confidential service is required.
+
+
+
+
+ Requests that integrity service be made available by means of gss_wrap(3GSS) or gss_get_mic(3GSS). If false, no per-message integrity service is required.
+
+
+
+
+ Does not reveal the initiator's identify to the acceptor. Otherwise, authenticate normally.
+
+
+
+
+ (Returned only) If true, the protection services specified by the states of GSS_C_CONF_FLAG and GSS_C_INTEG_FLAG are available
+ if the accompanying major status return value is either GSS_S_COMPLETE or GSS_S_CONTINUE_NEEDED. If false, the protection services are available
+ only if the accompanying major status return value is GSS_S_COMPLETE.
+
+
+
+
+ (Returned only) If true, the resultant security context may be transferred to other processes by means of a call to gss_export_sec_context(3GSS). If false, the security context cannot be transferred.
+
+
+
+
+ Credentials to use to establish the context
+
+
+
+
+ Acquires credentials for the supplied principal using the supplied password
+
+ Username
+ Password
+ GSS_C_BOTH - Credentials may be used either to initiate or accept security contexts.
+ GSS_C_INITIATE - Credentials will only be used to initiate security contexts.
+ GSS_C_ACCEPT - Credentials will only be used to accept security contexts.
+ An object containing the credentials
+
+
+
+ Acquires credentials for the supplied principal using material stored in a valid keytab
+
+ Username
+ GSS_C_BOTH - Credentials may be used either to initiate or accept security contexts.
+ GSS_C_INITIATE - Credentials will only be used to initiate security contexts.
+ GSS_C_ACCEPT - Credentials will only be used to accept security contexts.
+ An object containing the credentials
+
+
+
+ Acquires default credentials stored in the cache
+
+ GSS_C_BOTH - Credentials may be used either to initiate or accept security contexts.
+ GSS_C_INITIATE - Credentials will only be used to initiate security contexts.
+ GSS_C_ACCEPT - Credentials will only be used to accept security contexts.
+ An object containing the credentials
+
+
+
+ Translates a name in internal form to a textual representation.
+
+ Name in internal form (GSSAPI).
+
+
+
+ size_t->unsigned int
+
+
+ void*
+
+
+ OM_uint32->gss_uint32->unsigned int
+
+
+ void*
+
+
+ OM_uint32->gss_uint32->unsigned int
+
+
+ void*
+
+
+
+ Converts a contiguous string name to GSS_API internal format
+ The gss_import_name() function converts a contiguous string name to internal form. In general,
+ the internal name returned by means of the output_name parameter will not be a mechanism name; the exception to this is if the input_name_type
+ indicates that the contiguous string provided by means of the input_name_buffer parameter is of type GSS_C_NT_EXPORT_NAME, in which case,
+ the returned internal name will be a mechanism name for the mechanism that exported the name.
+
+ Status code returned by the underlying mechanism.
+ The gss_buffer_desc structure containing the name to be imported.
+ A gss_OID that specifies the format that the input_name_buffer is in.
+ The gss_name_t structure to receive the returned name in internal form. Storage associated with this name must be freed by the application after use with a call to gss_release_name().
+
+ The gss_import_name() function may return the following status codes:
+ GSS_S_COMPLETE: The gss_import_name() function completed successfully.
+ GSS_S_BAD_NAMETYPE: The input_name_type was unrecognized.
+ GSS_S_BAD_NAME: The input_name parameter could not be interpreted as a name of the specified type.
+ GSS_S_BAD_MECH: The input_name_type was GSS_C_NT_EXPORT_NAME, but the mechanism contained within the input_name is not supported.
+
+
+
+
+ Allows an application to acquire a handle for a pre-existing credential by name. GSS-API implementations must impose a local access-control
+ policy on callers of this routine to prevent unauthorized callers from acquiring credentials to which they are not entitled.
+ This routine is not intended to provide a "login to the network" function, as such a function would involve the creation of new credentials
+ rather than merely acquiring a handle to existing credentials
+
+ Mechanism specific status code.
+ Name of principal whose credential should be acquired.
+ Number of seconds that credentials should remain valid.
+ Specify GSS_C_INDEFINITE to request that the credentials have the maximum permitted lifetime.
+ Set of underlying security mechanisms that may be used.
+ GSS_C_NO_OID_SET may be used to obtain an implementation-specific default.
+ GSS_C_BOTH - Credentials may be used either to initiate or accept security contexts.
+ GSS_C_INITIATE - Credentials will only be used to initiate security contexts.
+ GSS_C_ACCEPT - Credentials will only be used to accept security contexts.
+ The returned credential handle. Resources associated with this credential handle must be released
+ by the application after use with a call to gss_release_cred().
+ The set of mechanisms for which the credential is valid. Storage associated with the returned OID-set must
+ be released by the application after use with a call to gss_release_oid_set(). Specify NULL if not required.
+ Actual number of seconds for which the returned credentials will remain valid. If the implementation does not
+ support expiration of credentials, the value GSS_C_INDEFINITE will be returned. Specify NULL if not required.
+
+ gss_acquire_cred() may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_BAD_MECH: Unavailable mechanism requested.
+ GSS_S_BAD_NAMETYPE: Type contained within desired_name parameter is not supported.
+ GSS_S_BAD_NAME: Value supplied for desired_name parameter is ill formed.
+ GSS_S_CREDENTIALS_EXPIRED: The credentials could not be acquired Because they have expired.
+ GSS_S_NO_CRED: No credentials were found for the specified name.
+
+
+
+
+ Acquires a credential for use in establishing a security context using a password.
+
+ Mechanism specific status code.
+ Name of principal whose credential should be acquired.
+ The password.
+ Number of seconds that credentials should remain valid.
+ Specify GSS_C_INDEFINITE to request that the credentials have the maximum permitted lifetime.
+ Set of underlying security mechanisms that may be used.
+ GSS_C_NO_OID_SET may be used to obtain an implementation-specific default.
+ GSS_C_BOTH - Credentials may be used either to initiate or accept security contexts.
+ GSS_C_INITIATE - Credentials will only be used to initiate security contexts.
+ GSS_C_ACCEPT - Credentials will only be used to accept security contexts.
+ The returned credential handle. Resources associated with this credential handle must be released
+ by the application after use with a call to gss_release_cred().
+ The set of mechanisms for which the credential is valid. Storage associated with the returned OID-set must
+ be released by the application after use with a call to gss_release_oid_set(). Specify NULL if not required.
+ Actual number of seconds for which the returned credentials will remain valid. If the implementation does not
+ support expiration of credentials, the value GSS_C_INDEFINITE will be returned. Specify NULL if not required.
+
+ gss_acquire_cred_with_password() may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_BAD_MECH: Unavailable mechanism requested.
+ GSS_S_BAD_NAMETYPE: Type contained within desired_name parameter is not supported.
+ GSS_S_BAD_NAME: Value supplied for desired_name parameter is ill formed.
+ GSS_S_CREDENTIALS_EXPIRED: The credentials could not be acquired Because they have expired.
+ GSS_S_NO_CRED: No credentials were found for the specified name.
+
+
+
+
+ Obtains information about a credential.
+
+ Mechanism specific status code.
+ A handle that refers to the target credential.
+ The name whose identity the credential asserts.
+ The number of seconds for which the credential remain valid.
+ If the credential has expired, this parameter is set to zero.
+ How the credential may be used.
+ Set of mechanisms supported by the credential.
+
+ gss_init_sec_context() may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_NO_CRED: The referenced credentials could not be accessed.
+ GSS_S_DEFECTIVE_CREDENTIAL: The referenced credentials were invalid.
+ GSS_S_CREDENTIALS_EXPIRED: The referenced credentials have expired.
+ If the lifetime parameter is not passed in as NULL, then its value is set to 0.
+
+
+
+
+ Initiates the establishment of a security context between the application and a remote peer.
+ Initially, the input_token parameter should be specified either as GSS_C_NO_BUFFER, or as a pointer to a gss_buffer_desc object whose length field
+ contains the value zero. The routine may return a output_token which should be transferred to the peer application, where the peer application will
+ present it to gss_accept_sec_context. If no token need be sent, gss_init_sec_context will indicate this by setting the length field of the output_token
+ argument to zero. To complete the context establishment, one or more reply tokens may be required from the peer application; if so, gss_init_sec_context
+ will return a status containing the supplementary information bit GSS_S_CONTINUE_NEEDED. In this case, gss_init_sec_context should be called again when the
+ reply token is received from the peer application, passing the reply token to gss_init_sec_context via the input_token parameters.
+
+ Mechanism specific status code.
+ Handle for credentials claimed. Supply GSS_C_NO_CREDENTIAL to act as a default initiator principal.
+ If no default initiator is defined, the function will return GSS_S_NO_CRED.
+ Context handle for new context. Supply GSS_C_NO_CONTEXT for first call; use value returned by first call in continuation calls.
+ Resources associated with this context-handle must be released by the application after use with a call to gss_delete_sec_context().
+ Name of target.
+ Object ID of desired mechanism. Supply GSS_C_NO_OID to obtain an implementation specific default.
+ Contains various independent flags, each of which requests that the context support a specific service option.
+ Symbolic names are provided for each flag, and the symbolic names corresponding to the required flags should be logically-ORed together to form the bit-mask value.
+ Desired number of seconds for which context should remain valid. Supply 0 to request a default validity period.
+ Application-specified bindings. Allows application to securely bind channel identification information to the security context.
+ Specify GSS_C_NO_CHANNEL_BINDINGS if channel bindings are not used.
+ Token received from peer application. Supply GSS_C_NO_BUFFER, or a pointer to a buffer containing the value GSS_C_EMPTY_BUFFER on initial call.
+ Actual mechanism used. The OID returned via this parameter will be a pointer to static storage that should be treated as read-only;
+ In particular the application should not attempt to free it. Specify NULL if not required.
+ Token to be sent to peer application. If the length field of the returned buffer is zero, no token need be sent to the peer application.
+ Storage associated with this buffer must be freed by the application after use with a call to gss_release_buffer().
+ Contains various independent flags, each of which indicates that the context supports a specific service option.
+ Specify NULL if not required. Symbolic names are provided for each flag, and the symbolic names corresponding to the required flags should be
+ logically-ANDed with the ret_flags value to test whether a given option is supported by the context.
+ Number of seconds for which the context will remain valid. If the implementation does not support context expiration,
+ the value GSS_C_INDEFINITE will be returned. Specify NULL if not required.
+
+ gss_init_sec_context() may return the following status codes:
+
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_CONTINUE_NEEDED: A token from the peer application is required to complete the context, and gss_init_sec_context() must be called again with that token.
+ GSS_S_DEFECTIVE_TOKEN: Consistency checks performed on the input_token failed.
+ GSS_S_DEFECTIVE_CREDENTIAL: Consistency checks performed on the credential failed.
+ GSS_S_NO_CRED: The supplied credentials are not valid for context acceptance, or the credential handle does not reference any credentials.
+ GSS_S_CREDENTIALS_EXPIRED: The referenced credentials have expired.
+ GSS_S_BAD_BINDINGS: The input_token contains different channel bindings than those specified by means of the input_chan_bindings parameter.
+ GSS_S_BAD_SIG: The input_token contains an invalid MIC or a MIC that cannot be verified.
+ GSS_S_OLD_TOKEN: The input_token is too old. This is a fatal error while establishing context.
+ GSS_S_DUPLICATE_TOKEN: The input_token is valid, but it is a duplicate of a token already processed.This is a fatal error while establishing context.
+ GSS_S_NO_CONTEXT: The supplied context handle does not refer to a valid context.
+ GSS_S_BAD_NAMETYPE: The provided target_name parameter contains an invalid or unsupported name type.
+ GSS_S_BAD_NAME: The supplied target_name parameter is ill-formed.
+ GSS_S_BAD_MECH: The token received specifies a mechanism that is not supported by the implementation or the provided credential.
+
+
+
+
+ Allows an application to obtain a textual representation of a GSS-API status code, for display to the user or for logging purposes.
+ Since some status values may indicate multiple conditions, applications may need to call gss_display_status multiple times,
+ each call generating a single text string. The message_context parameter is used by gss_display_status to store state information about which
+ error messages have already been extracted from a given status_value; message_context must be initialized to 0 by the application prior to the first call,
+ and gss_display_status will return a non-zero value in this parameter if there are further messages to extract.
+
+ Mechanism specific status code.
+ Status value to be converted.
+ GSS_C_GSS_CODE - status_value is a GSS status code. GSS_C_MECH_CODE - status_value is a mechanism status code.
+ Underlying mechanism (used to interpret a minor status value). Supply GSS_C_NO_OID to obtain the system default.
+ Should be initialized to zero by the application prior to the first call.
+ On return from gss_display_status(), a non-zero status_value parameter indicates that additional messages may be extracted from the status code via
+ subsequent calls to gss_display_status(), passing the same status_value, status_type, mech_type, and message_context parameters.
+ Textual interpretation of the status_value. Storage associated with this parameter must be freed by the application
+ after use with a call to gss_release_buffer().
+
+ gss_display_status() may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_BAD_MECH: Indicates that translation in accordance with an unsupported mechanism type was requested.
+ GSS_S_BAD_STATUS: The status value was not recognized, or the status type was neither GSS_C_GSS_CODE nor GSS_C_MECH_CODE.
+
+
+
+
+ Allows an application to obtain a textual representation of an opaque internal-form name for display purposes.
+ The syntax of a printable name is defined by the GSS-API implementation.
+
+ Mechanism specific status code.
+ Name to be displayed.
+ Buffer to receive textual name string.
+ The type of the returned name.
+
+ gss_display_name() may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_BAD_NAME: input_name was ill-formed.
+
+
+
+
+ Free storage associated with a buffer. The storage must have been allocated by a GSS-API routine.
+ In addition to freeing the associated storage, the routine will zero the length field in the descriptor to which the buffer parameter refers,
+ and implementations are encouraged to additionally set the pointer field in the descriptor to NULL. Any buffer object returned by a GSS-API routine
+ may be passed to gss_release_buffer (even if there is no storage associated with the buffer).
+
+ Mechanism-specific status code.
+ The storage associated with the buffer will be deleted. The gss_buffer_desc object will not be freed,
+ but its length field will be zeroed.
+
+ The gss_release_buffer() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion
+
+
+
+
+ Delete a security context. gss_delete_sec_context will delete the local data structures associated with the specified security context,
+ and may generate an output_token, which when passed to the peer gss_process_context_token will instruct it to do likewise.
+ If no token is required by the mechanism, the GSS-API should set the length field of the output_token (if provided) to zero.
+ No further security services may be obtained using the context specified by context_handle.
+
+ Mechanism specific status code.
+ Context handle identifying context to delete. After deleting the context,
+ the GSS-API will set this context handle to GSS_C_NO_CONTEXT.
+
+ The gss_delete_sec_context() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_NO_CONTEXT: No valid context was supplied.
+
+
+
+
+ Free GSSAPI-allocated storage associated with an internal-form name. The name is set to GSS_C_NO_NAME on successful completion of this call.
+
+ Mechanism specific status code.
+ The name to be deleted.
+
+ The gss_release_name() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_BAD_NAME: The name parameter did not contain a valid name.
+
+
+
+
+ Informs GSS-API that the specified credential handle is no longer required by the application, and frees associated resources.
+ The cred_handle is set to GSS_C_NO_CREDENTIAL on successful completion of this call.
+
+ Mechanism specific status code.
+ Opaque handle identifying credential to be released. If GSS_C_NO_CREDENTIAL is supplied,
+ the routine will complete successfully, but will do nothing.
+
+ The gss_release_cred() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_NO_CRED: Credentials could not be accessed.
+
+
+
+
+ Converts a message previously protected by gss_wrap back to a usable form, verifying the embedded MIC.
+ The conf_state parameter indicates whether the message was encrypted; the qop_state parameter indicates the strength of
+ protection that was used to provide the confidentiality and integrity services.
+
+ Mechanism specific status code.
+ Identifies the context on which the message arrived.
+ Protected message.
+ Buffer to receive unwrapped message.
+ State of the configuration.
+ State of the QoP.
+
+ The gss_unwrap() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_DEFECTIVE_TOKEN: The token failed consistency checks.
+ GSS_S_BAD_SIG: The MIC was incorrect.
+ GSS_S_DUPLICATE_TOKEN: The token was valid, and contained a correct MIC for the message, but it had already been processed.
+ GSS_S_OLD_TOKEN: The token was valid, and contained a correct MIC for the message, but it is too old to check for duplication.
+ GSS_S_UNSEQ_TOKEN: The token was valid, and contained a correct MIC for the message, but has been verified out of sequence;
+ a later token has already been received.
+ GSS_S_GAP_TOKEN: The token was valid, and contained a correct MIC for the message, but has been verified out of sequence;
+ an earlier expected token has not yet been received.
+ GSS_S_CONTEXT_EXPIRED: The context has already expired.
+ GSS_S_NO_CONTEXT: The context_handle parameter did not identify a valid context.
+
+
+
+
+ Attaches a cryptographic MIC and optionally encrypts the specified input_message. The output_message contains both the MIC and the message.
+ The qop_req parameter allows a choice between several cryptographic algorithms, if supported by the chosen mechanism.
+
+ Mechanism specific status code.
+ Identifies the context on which the message arrived.
+ Message to be protected.
+ Buffer to receive protected message.
+
+ The gss_unwrap() function may return the following status codes:
+ GSS_S_COMPLETE: Successful completion.
+ GSS_S_CONTEXT_EXPIRED: The context has already expired.
+ GSS_S_NO_CONTEXT: The context_handle parameter did not identify a valid context.
+ GSS_S_BAD_QOP: The specified QOP is not supported by the mechanism.
+
+
+
+
+ MIT Kerberos 5 GSS Bindings Linux
+
+
+
+
+ MIT Kerberos 5 GSS Bindings Windows 64bit
+
+
+
+
+ Automatic dynamic disposable
+
+
+
+
+ Automatic dynamic disposable storing
+
+
+
+
+ Automatic dynamic disposable storing , will be called at dispose
+
+
+
+
+ Automatic dynamic disposable storing , will be disposed
+
+
+
+
+ Automatic dynamic disposable storing , will be disposed
+
+
+
+
+ Automatic dynamic disposable storing , will be disposed
+
+
+
+
+ Automatic dynamic disposable storing , will be disposed and will be called at dispose
+
+
+
+
+ Automatic dynamic disposable
+
+
+
+
+ Original value, can be used with ref
+
+
+
+
+ Automatic dynamic disposable storing , will be disposed and will be called at dispose
+
+
+
+
+ Returns stored value
+
+
+
+
+ Gets the Kerberos configuration from the "krb5.conf/krb5.ini" file
+
+
+
+
+ Memory pinned object
+
+
+
+
+ Create memory pinned object from
+
+ Any class type
+ Value to pin
+ Pinned value
+
+
+
+ Memory pinned object
+
+ Any class type
+
+
+
+ Original object value, can be used with ref
+
+
+
+
+ In memory address of the object
+
+
+
+
+ Create memory pinned object from
+
+ Value to pin
+
+
+
+ Returns address of object in memory
+
+
+
+
+ Returns original object value
+
+
+
+
+ SSPI constants
+
+
+
+
+ SSPI Bindings
+
+
+
+
+ A safe handle to the credential's handle.
+
+
+
+
+ Acquires a handle to preexisting credentials of a security principal.
+
+
+
+
+ Creates an instance of SspiSecurityContext with credentials provided.
+
+ Credentials to be used with the Security Context
+
+
+
+ Initiates the client side, outbound security context from a credential handle.
+
+ Byte array to be sent to the server.
+ Byte array received by the server.
+ The target.
+
+
+
+ Defines the type of the security buffer.
+
+
+
+
+ Defines a security handle.
+
+
+
+
+ Describes a buffer allocated by a transport to pass to a security package.
+
+
+
+
+ Specifies the size, in bytes, of the buffer.
+
+
+
+
+ Bit flags that indicate the type of the buffer.
+
+
+
+
+ Pointer to a buffer.
+
+
+
+
+ Hold a numeric value used in defining other data types.
+
+
+
+
+ Least significant digits.
+
+
+
+
+ Most significant digits.
+
+
+
+
+ Holds a pointer used to define a security handle.
+
+
+
+
+ Least significant digits.
+
+
+
+
+ Most significant digits.
+
+
+
+
+ Indicates the sizes of important structures used in the message support functions.
+
+
+
+
+ Specifies the maximum size of the security token used in the authentication changes.
+
+
+
+
+ Specifies the maximum size of the signature created by the MakeSignature function.
+ This member must be zero if integrity services are not requested or available.
+
+
+
+
+ Specifies the preferred integral size of the messages.
+
+
+
+
+ Size of the security trailer to be appended to messages.
+ This member should be zero if the relevant services are not requested or available.
+
+
+
+
+ Implements the 'SEC_WINNT_AUTH_IDENTITY' structure. See:
+ https://msdn.microsoft.com/en-us/library/windows/desktop/aa380131(v=vs.85).aspx
+
+
+
+
+ DNS resolver that runs queries against a server.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets the DNS SVR records of the service name that is provided.
+
+ A list of s sorted as described in RFC2782.
+
+
+
+ Sorts a list of DNS SRV records according to the sorting rules described in RFC2782.
+
+ List of s to sort.
+ A new list of sorted s.
+
+
+
+ Resets the DnsSrvResolver
+
+
+
+
+ DNS record type.
+
+
+
+
+ CLASS fields appear in resource records.
+
+
+
+
+ The Internet.
+
+
+
+
+ DNS question type.
+ QueryType are a superset of RecordType.
+
+
+
+
+ A resource record which specifies the location of the server(s) for a specific protocol and domain.
+
+ RFC 2782
+
+
+
+
+ DNS Record OpCode.
+ A four bit field that specifies kind of query in this message.
+ This value is set by the originator of a query and copied into the response.
+
+
+
+
+ A standard query (QUERY).
+
+
+
+
+ Retired IQUERY code.
+
+
+
+
+ A server status request (STATUS).
+
+
+
+
+ Notify OpCode.
+
+
+
+
+ Update OpCode.
+
+
+
+
+ The class transports information of the lookup query performed.
+
+
+
+
+ Gets the domain name
+
+
+
+
+ Gets the type of the question.
+
+
+
+
+ Gets the question class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Domain name.
+ Type of the question.
+ The question class.
+
+
+
+ Initializes a new instance of the class.
+
+ of the record.
+
+
+
+ Gets the bytes in this collection.
+
+
+
+
+ Gets or sets the unique identifier of the record.
+
+
+
+
+ Gets or sets the number of questions in the record.
+
+
+
+
+ Gets or sets the number of answers in the record.
+
+
+
+
+ Gets or sets the number of name servers in the record.
+
+
+
+
+ Gets or sets the number of additional records in the record.
+
+
+
+
+ Specifies kind of query.
+
+
+
+
+ Recursion Desired
+
+
+
+
+ Represents the header as a byte array
+
+
+
+
+ The Resource Record this record data belongs to.
+
+
+
+
+ A DNS record reader.
+
+
+
+
+ Gets or sets the position of the cursor in the record.
+
+
+
+
+ Initializes a new instance of the class.
+
+ Byte array of the record.
+ Position of the cursor in the record.
+
+
+
+ Initializes a new instance of the class.
+
+ Byte array of the record.
+
+
+
+ Read a byte from the record.
+
+
+
+
+ Read a char from the record.
+
+
+
+
+ Read an unsigned int 16 from the record.
+
+
+
+
+ Read an unsigned int 16 from the offset of the record.
+
+ Offset to start reading from.
+
+
+
+ Read an unsigned int 32 from the record.
+
+
+
+
+ Read the domain name from the record.
+
+ Domain name of the record.
+
+
+
+ Read a string from the record.
+
+
+
+
+ Read a series of bytes from the record.
+
+ Length to read from the record.
+
+
+
+ Read record from the data.
+
+ Type of the record to read.
+ Record read from the data.
+
+
+
+ A default Dns Record.
+
+
+
+
+ A DNS request.
+
+
+
+ Gets the header.
+
+
+
+ The default DNS server port.
+
+
+
+
+ Fills a list of the endpoints in the local network configuration.
+
+
+
+ Execute a query on a DNS server.
+ Domain name to look up.
+ DNS response for request.
+
+
+
+ Gets the name of the node to which this resource record pertains.
+
+
+
+
+ Gets the type of resource record.
+
+
+
+
+ Gets the type class of resource record, mostly IN but can be CS, CH or HS.
+
+
+
+
+ Gets the time to live, in seconds, that the resource record may be cached.
+
+
+
+
+ Gets the record length.
+
+
+
+
+ Gets one of the Record* classes.
+
+
+
+
+ Answer resource record.
+
+
+
+
+ Authority resource record.
+
+
+
+
+ Additional resource record.
+
+
+
+
+ List of Question records.
+
+
+
+
+ List of AnswerResourceRecord records.
+
+
+
+
+ List of AuthorityResourceRecord records.
+
+
+
+
+ List of AdditionalResourceRecord records.
+
+
+
+
+ The record header.
+
+
+
+
+ Server which delivered this response.
+
+
+
+
+ The Size of the message.
+
+
+
+
+ Error message, empty when no error.
+
+
+
+
+ TimeStamp when cached.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Initializes a new instance of the class.
+
+ of the DNS server that responded to the query.
+ array of the response data.
+
+
+
+ List of RecordSRV in Response.Answers
+
+
+
+
+ Class that represents a DNS SRV record.
+ RFC 2782 (https://tools.ietf.org/html/rfc2782)
+
+
+
+
+ Gets the port.
+
+
+
+
+ Gets the priority.
+
+
+
+
+ Gets the target domain name.
+
+
+
+
+ Gets the weight.
+
+
+
+
+ Initializes a new instance of class.
+
+ The port.
+ The priority.
+ The target.
+ The weight.
+
+
+
+ Initializes a new instance of class.
+
+ of the record data.
+
+
+
+ Compare two objects. First, using their priority and
+ if both have the same, then using their weights.
+
+ A to compare.
+ A to compare.
+
+
+
+
+ This class is modeled after .NET Stopwatch. It provides better
+ performance (no system calls).It is however less precise than
+ .NET Stopwatch, measuring in milliseconds. It is adequate to use
+ when high-precision is not required (e.g for measuring IO timeouts),
+ but not for other tasks.
+
+
+
+
+ Wrapper around NetworkStream.
+
+ MyNetworkStream is equivalent to NetworkStream, except
+ 1. It throws TimeoutException if read or write timeout occurs, instead
+ of IOException, to match behavior of other streams (named pipe and
+ shared memory). This property comes handy in TimedStream.
+
+ 2. It implements workarounds for WSAEWOULDBLOCK errors, that can start
+ occuring after stream has times out. For a discussion about the CLR bug,
+ refer to http://tinyurl.com/lhgpyf. This error should never occur, as
+ we're not using asynchronous operations, but apparerntly it does occur
+ directly after timeout has expired.
+ The workaround is hinted in the URL above and implemented like this:
+ For each IO operation, if it throws WSAEWOULDBLOCK, we explicitely set
+ the socket to Blocking and retry the operation once again.
+
+
+
+
+ Determines whether the connection state is closed or open.
+
+ true if connection is closed; otherwise, false.
+
+
+
+ Set keepalive + timeout on socket.
+
+ socket
+ keepalive timeout, in seconds
+
+
+
+ Read a single quoted identifier from the stream
+
+
+
+
+
+
+ Helper class to encapsulate shared memory functionality
+ Also cares of proper cleanup of file mapping object and cew
+
+
+
+
+ Summary description for SharedMemoryStream.
+
+
+
+
+ By creating a private ctor, we keep the compiler from creating a default ctor
+
+
+
+
+ Mark - or + signs that are unary ops as no output
+
+
+
+
+
+ Handles SSL connections for the Classic and X protocols.
+
+
+
+
+ Contains the connection options provided by the user.
+
+
+
+
+ A flag to establish how certificates are to be treated and validated.
+
+
+
+
+ Defines the supported TLS protocols.
+
+
+
+
+ Retrieves a certificate from PEM file.
+
+
+
+
+ Retrieves a collection containing the client SSL PFX certificates.
+
+ Dependent on connection string settings.
+ Either file or store based certificates are used.
+
+
+
+ Initiates the SSL connection.
+
+ The base stream.
+ The encoding used in the SSL connection.
+ The connection string used to establish the connection.
+ Boolean that indicates if the function will be executed asynchronously.
+ The cancellation token.
+ A instance ready to initiate an SSL connection.
+
+
+
+ Verifies the SSL certificates used for authentication.
+
+ An object that contains state information for this validation.
+ The MySQL server certificate used to authenticate the remote party.
+ The chain of certificate authorities associated with the remote certificate.
+ One or more errors associated with the remote certificate.
+ true if no errors were found based on the selected SSL mode; false, otherwise.
+
+
+
+ Gets the extension of the specified file.
+
+ The path of the file.
+ Flag to indicate if the result should be converted to lower case.
+ The . character is ommited from the result.
+
+
+
+
+ Summary description for StreamCreator.
+
+
+
+
+ Set the keepalive timeout on the socket.
+
+ The socket object.
+ The keepalive timeout, in seconds.
+
+
+
+ Summary description for Version.
+
+
+
+
+ Provides functionality to read SSL PEM certificates and to perform multiple validations via Bouncy Castle.
+
+
+
+
+ Raises an exception if the specified connection option is null, empty or whitespace.
+
+ The connection option to verify.
+ The name of the connection option.
+
+
+
+ Reads the specified file as a byte array.
+
+ The path of the file to read.
+ A byte array representing the read file.
+
+
+
+ Reads the SSL certificate file.
+
+ The path to the certificate file.
+ A instance representing the SSL certificate file.
+
+
+
+ Reads the SSL certificate key file.
+
+ The path to the certificate key file.
+ A instance representing the SSL certificate key file.
+
+
+
+ Verifies that the certificate has not yet expired.
+
+ The certificate to verify.
+
+
+
+ Verifies a certificate CA status.
+
+ The certificate to validate.
+ A flag indicating the expected CA status.
+
+
+
+ Verifies that the certificate was signed using the private key that corresponds to the specified public key
+
+ The client side certificate containing the public key.
+ The server certificate.
+
+
+
+ Verifies that no SSL policy errors regarding the identitfy of the host were raised.
+
+ A instance set with the raised SSL errors.
+
+
+
+ Verifies that the issuer matches the CA by comparing the CA certificate issuer and the server certificate issuer.
+
+ The CA certificate.
+ The server certificate.
+
+
+
+
+ Gets and sets the host list.
+
+
+
+
+ Gets the active host.
+
+
+
+
+ Active host.
+
+
+
+
+ Sets the initial active host.
+
+
+
+
+ Determines the next host.
+
+ object that represents the next available host.
+
+
+
+ Implements common elements that allow to manage the hosts available for client side failover.
+
+
+
+
+ Gets and sets the failover group which consists of a host list.
+
+
+
+
+ Resets the manager.
+
+
+
+
+ Sets the host list to be used during failover operations.
+
+ The host list.
+ The failover method.
+
+
+
+ Attempts to establish a connection to a host specified from the list.
+
+ The original connection string set by the user.
+ An out parameter that stores the updated connection string.
+ A object in case this is a pooling scenario.
+ A flag indicating if the default port is used in the connection.
+ An instance if the connection was succesfully established, a exception is thrown otherwise.
+
+
+
+
+ Creates a if more than one host is found.
+
+ A string containing an unparsed list of hosts.
+ true if the connection is X Protocol; otherwise false.
+ true if the connection data is a URI; otherwise false.
+ The number of hosts found, -1 if an error was raised during parsing.
+
+
+
+ Creates a object based on the provided parameters.
+
+ The host string that can be a simple host name or a host name and port.
+ The priority of the host.
+ The port number of the host.
+ true if the connection data is a URI; otherwise false.
+
+
+
+
+ Attempts the next host in the list. Moves to the first element if the end of the list is reached.
+
+
+
+
+ Determines the next host on which to attempt a connection by checking the value of the Priority property in descending order.
+
+
+
+
+ Determines the next host on which to attempt a connection randomly.
+
+
+
+
+ Depicts a host which can be failed over to.
+
+
+
+
+ Gets and sets the name or address of the host.
+
+
+
+
+ Gets and sets the port number.
+
+
+
+
+ Gets a value between 0 and 100 which represents the priority of the host.
+
+
+
+
+ Flag to indicate if this host is currently being used.
+
+
+
+
+ Flag to indicate if this host has been attempted to connection.
+
+
+
+
+ Time since the host has been demoted.
+
+
+
+
+ Initializes a object.
+
+ The host.
+ The port.
+ The priority.
+
+
+
+ Compares two objects of type .
+
+ FailoverServer object to compare.
+ True if host properties are the same. Otherwise, false.
+
+
+
+ Manages the hosts available for client side failover using the Random Failover method.
+ The Random Failover method attempts to connect to the hosts specified in the list randomly until all the hosts have been attempted.
+
+
+
+
+ The initial host taken from the list.
+
+
+
+
+ The host for the current connection attempt.
+
+
+
+
+ Random object to get the next host.
+
+
+
+
+ Sets the initial active host.
+
+
+
+
+ Determines the next host.
+
+ A object that represents the next available host.
+
+
+
+ Manages the hosts available for client side failover using the Sequential Failover method.
+ The Sequential Failover method attempts to connect to the hosts specified in the list one after another until the initial host is reached.
+
+
+
+
+ The initial host taken from the list.
+
+
+
+
+ The index of the current host.
+
+
+
+
+ The host for the current connection attempt.
+
+
+
+
+ Sets the initial active host.
+
+
+
+
+ Determines the next host.
+
+ A object that represents the next available host.
+
+
+
+ A strongly-typed resource class, for looking up localized strings, etc.
+
+
+
+
+ Returns the cached ResourceManager instance used by this class.
+
+
+
+
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+
+
+
+
+ Looks up a localized string similar to Improper MySqlCommandBuilder state: adapter is null.
+
+
+
+
+ Looks up a localized string similar to Improper MySqlCommandBuilder state: adapter's SelectCommand is null.
+
+
+
+
+ Looks up a localized string similar to Invalid attempt to access a field before calling Read().
+
+
+
+
+ Looks up a localized string similar to Authentication to host '{0}' for user '{1}' using method '{2}' failed with message: {3}.
+
+
+
+
+ Looks up a localized string similar to Authentication method '{0}' not supported by any of the available plugins..
+
+
+
+
+ Looks up a localized string similar to Authentication plugin '{0}' is currently not supported..
+
+
+
+
+ Looks up a localized string similar to Version string not in acceptable format.
+
+
+
+
+ Looks up a localized string similar to The buffer cannot be null.
+
+
+
+
+ Looks up a localized string similar to The buffer is not large enough.
+
+
+
+
+ Looks up a localized string similar to Canceling an executing query requires MySQL 5.0 or higher..
+
+
+
+
+ Looks up a localized string similar to Canceling an active query is only supported on MySQL 5.0.0 and above. .
+
+
+
+
+ Looks up a localized string similar to Parameters can only be derived for commands using the StoredProcedure command type..
+
+
+
+
+ Looks up a localized string similar to MySqlCommandBuilder does not support multi-table statements.
+
+
+
+
+ Looks up a localized string similar to MySqlCommandBuilder cannot operate on tables with no unique or key columns.
+
+
+
+
+ Looks up a localized string similar to Chaos isolation level is not supported .
+
+
+
+
+ Looks up a localized string similar to Clear-password authentication is not supported over insecure channels..
+
+
+
+
+ Looks up a localized string similar to The CommandText property has not been properly initialized..
+
+
+
+
+ Looks up a localized string similar to Compression is not supported..
+
+
+
+
+ Looks up a localized string similar to The connection is already open..
+
+
+
+
+ Looks up a localized string similar to Connection unexpectedly terminated..
+
+
+
+
+ Looks up a localized string similar to Connection must be valid and open.
+
+
+
+
+ Looks up a localized string similar to The connection is not open..
+
+
+
+
+ Looks up a localized string similar to The connection property has not been set or is null..
+
+
+
+
+ Looks up a localized string similar to Could not find specified column in results: {0}.
+
+
+
+
+ Looks up a localized string similar to Count cannot be negative.
+
+
+
+
+ Looks up a localized string similar to SetLength is not a valid operation on CompressedStream.
+
+
+
+
+ Looks up a localized string similar to The given value was not in a supported format..
+
+
+
+
+ Looks up a localized string similar to There is already an open DataReader associated with this Connection which must be closed first..
+
+
+
+
+ Looks up a localized string similar to The default connection encoding was not found. Please report this as a bug along with your connection string and system details..
+
+
+
+
+ Looks up a localized string similar to MySQL Connector/NET does not currently support distributed transactions..
+
+
+
+
+ Looks up a localized string similar to Specifying multiple host names with DNS SRV lookup is not permitted..
+
+
+
+
+ Looks up a localized string similar to Specifying a port number with DNS SRV lookup is not permitted..
+
+
+
+
+ Looks up a localized string similar to Using Unix domain sockets with DNS SRV lookup is not permitted..
+
+
+
+
+ Looks up a localized string similar to Unable to locate any hosts for {0}..
+
+
+
+
+ Looks up a localized string similar to Encoding error during validation..
+
+
+
+
+ Looks up a localized string similar to Error creating socket connection.
+
+
+
+
+ Looks up a localized string similar to Verify that user '{0}'@'{1}' has enough privileges to execute..
+
+
+
+
+ Looks up a localized string similar to Fatal error encountered during command execution..
+
+
+
+
+ Looks up a localized string similar to Fatal error encountered during data read..
+
+
+
+
+ Looks up a localized string similar to Fatal error encountered attempting to read the resultset..
+
+
+
+
+ Looks up a localized string similar to Challenge received is corrupt..
+
+
+
+
+ Looks up a localized string similar to An event handler for FidoActionRequested was not specified..
+
+
+
+
+ Looks up a localized string similar to FIDO registration is missing..
+
+
+
+
+ Looks up a localized string similar to File based certificates are only supported when connecting to MySQL Server 5.1 or greater..
+
+
+
+
+ Looks up a localized string similar to The specified file cannot be converted to a certificate..
+
+
+
+
+ Looks up a localized string similar to The specified file cannot be converted to a key..
+
+
+
+
+ Looks up a localized string similar to Failed to read file at the specified location..
+
+
+
+
+ Looks up a localized string similar to No file path has been provided for the connection option {0}..
+
+
+
+
+ Looks up a localized string similar to From index and length use more bytes than from contains.
+
+
+
+
+ Looks up a localized string similar to From index must be a valid index inside the from buffer.
+
+
+
+
+ Looks up a localized string similar to Call to GetHostEntry failed after {0} while querying for hostname '{1}': SocketErrorCode={2}, ErrorCode={3}, NativeErrorCode={4}..
+
+
+
+
+ Looks up a localized string similar to Retrieving procedure metadata for {0} from server..
+
+
+
+
+ Looks up a localized string similar to Value has an unsupported format..
+
+
+
+
+ Looks up a localized string similar to An incorrect response was received from the server..
+
+
+
+
+ Looks up a localized string similar to Index and length use more bytes than to has room for.
+
+
+
+
+ Looks up a localized string similar to Index must be a valid position in the buffer.
+
+
+
+
+ Looks up a localized string similar to The provided key is invalid..
+
+
+
+
+ Looks up a localized string similar to Certificate with Thumbprint '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to You have specified an invalid column ordinal..
+
+
+
+
+ Looks up a localized string similar to The requested value '{0}' is invalid for the given keyword '{1}'..
+
+
+
+
+ Looks up a localized string similar to The host name or IP address is invalid..
+
+
+
+
+ Looks up a localized string similar to Microsecond must be a value between 0 and 999999..
+
+
+
+
+ Looks up a localized string similar to Millisecond must be a value between 0 and 999. For more precision use Microsecond..
+
+
+
+
+ Looks up a localized string similar to Either provide a valid path for 'allowloadlocalinfileinpath' or enable 'allowloadlocalinfile'..
+
+
+
+
+ Looks up a localized string similar to Procedure or function '{0}' cannot be found in database '{1}'..
+
+
+
+
+ Looks up a localized string similar to The certificate is invalid..
+
+
+
+
+ Looks up a localized string similar to Unable to validate the signature..
+
+
+
+
+ Looks up a localized string similar to Unable to verify the signature..
+
+
+
+
+ Looks up a localized string similar to Value '{0}' is not of the correct type..
+
+
+
+
+ Looks up a localized string similar to '{0}' is an illegal value for a boolean option..
+
+
+
+
+ Looks up a localized string similar to Keyword does not allow null values..
+
+
+
+
+ Looks up a localized string similar to Option not supported..
+
+
+
+
+ Looks up a localized string similar to Server asked for stream in response to LOAD DATA LOCAL INFILE, but the functionality is disabled by the client setting 'allowlocalinfile' to 'false'..
+
+
+
+
+ Looks up a localized string similar to Mixing named and unnamed parameters is not allowed..
+
+
+
+
+ Looks up a localized string similar to INTERNAL ERROR: More than one output parameter row detected..
+
+
+
+
+ Looks up a localized string similar to Multiple simultaneous connections or connections with different connection strings inside the same transaction are not currently supported..
+
+
+
+
+ Looks up a localized string similar to NamedPipeStream does not support seeking.
+
+
+
+
+ Looks up a localized string similar to NamedPipeStream doesn't support SetLength.
+
+
+
+
+ Looks up a localized string similar to The new value must be a MySqlParameter object..
+
+
+
+
+ Looks up a localized string similar to Invalid attempt to call NextResult when the reader is closed..
+
+
+
+
+ Looks up a localized string similar to When calling stored procedures and 'Use Procedure Bodies' is false, all parameters must have their type explicitly set..
+
+
+
+
+ Looks up a localized string similar to Nested transactions are not supported..
+
+
+
+
+ Looks up a localized string similar to The host {0} does not support SSL connections..
+
+
+
+
+ Looks up a localized string similar to Unix sockets are not supported on Windows..
+
+
+
+
+ Looks up a localized string similar to Cannot retrieve Windows identity for current user. Connections that use IntegratedSecurity cannot be pooled. Use either 'ConnectionReset=true' or 'Pooling=false' in the connection string to fix..
+
+
+
+
+ Looks up a localized string similar to The object is not open or has been disposed..
+
+
+
+
+ Looks up a localized string similar to OCI configuration file could not be read..
+
+
+
+
+ Looks up a localized string similar to OCI configuration profile not found..
+
+
+
+
+ Looks up a localized string similar to OCI configuration file does not contain a 'fingerprint' or 'key_file' entry..
+
+
+
+
+ Looks up a localized string similar to OCI configuration entry 'key_file' does not reference a valid key file..
+
+
+
+
+ Looks up a localized string similar to Private key could not be found at location given by OCI configuration entry 'key_file'..
+
+
+
+
+ Looks up a localized string similar to The OCI SDK cannot be found or is not installed..
+
+
+
+
+ Looks up a localized string similar to Security token file could not be found at location given by OCI configuration entry 'security_token_file'..
+
+
+
+
+ Looks up a localized string similar to The size of the OCI security token file exceeds the maximum value of 10KB allowed..
+
+
+
+
+ Looks up a localized string similar to The offset cannot be negative.
+
+
+
+
+ Looks up a localized string similar to Offset must be a valid position in buffer.
+
+
+
+
+ Looks up a localized string similar to Authentication with old password no longer supported, use 4.1 style passwords..
+
+
+
+
+ Looks up a localized string similar to The option '{0}' is not currently supported..
+
+
+
+
+ Looks up a localized string similar to Parameter '{0}' has already been defined..
+
+
+
+
+ Looks up a localized string similar to Parameter cannot have a negative value.
+
+
+
+
+ Looks up a localized string similar to Parameter cannot be null.
+
+
+
+
+ Looks up a localized string similar to Parameter '{0}' can't be null or empty..
+
+
+
+
+ Looks up a localized string similar to Parameter index was not found in Parameter Collection..
+
+
+
+
+ Looks up a localized string similar to Parameter is invalid..
+
+
+
+
+ Looks up a localized string similar to Parameter '{0}' must be defined..
+
+
+
+
+ Looks up a localized string similar to Parameter '{0}' was not found during prepare..
+
+
+
+
+ Looks up a localized string similar to Parameter can't be null or empty..
+
+
+
+
+ Looks up a localized string similar to Password must be valid and contain length characters.
+
+
+
+
+ Looks up a localized string similar to This category includes a series of counters for MySQL.
+
+
+
+
+ Looks up a localized string similar to .NET Data Provider for MySQL.
+
+
+
+
+ Looks up a localized string similar to The number of times a procedures metadata had to be queried from the server..
+
+
+
+
+ Looks up a localized string similar to Hard Procedure Queries.
+
+
+
+
+ Looks up a localized string similar to The number of times a procedures metadata was retrieved from the client-side cache..
+
+
+
+
+ Looks up a localized string similar to Soft Procedure Queries.
+
+
+
+
+ Looks up a localized string similar to same name are not supported..
+
+
+
+
+ Looks up a localized string similar to MySQL Server {0} dos not support query attributes..
+
+
+
+
+ Looks up a localized string similar to MySQL Connector/NET does not support query attributes with prepared statements for this version of MySQL Server..
+
+
+
+
+ Looks up a localized string similar to Packets larger than max_allowed_packet are not allowed..
+
+
+
+
+ Looks up a localized string similar to Reading from the stream has failed..
+
+
+
+
+ Looks up a localized string similar to Invalid attempt to read a prior column using SequentialAccess.
+
+
+
+
+ Looks up a localized string similar to Replicated connections allow only readonly statements..
+
+
+
+
+ Looks up a localized string similar to Attempt to connect to '{0}' server failed..
+
+
+
+
+ Looks up a localized string similar to No available server found..
+
+
+
+
+ Looks up a localized string similar to Replication group '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to Replicated server not found: '{0}'.
+
+
+
+
+ Looks up a localized string similar to Routine '{0}' cannot be found. Either check the spelling or make sure you have sufficient rights to execute the routine..
+
+
+
+
+ Looks up a localized string similar to Attempt to call stored function '{0}' without specifying a return parameter.
+
+
+
+
+ Looks up a localized string similar to Retrieval of the RSA public key is not enabled for insecure connections..
+
+
+
+
+ Looks up a localized string similar to Connector/NET no longer supports server versions prior to 5.0.
+
+
+
+
+ Looks up a localized string similar to Snapshot isolation level is not supported..
+
+
+
+
+ Looks up a localized string similar to Socket streams do not support seeking.
+
+
+
+
+ Looks up a localized string similar to Retrieving procedure metadata for {0} from procedure cache..
+
+
+
+
+ Looks up a localized string similar to Stored procedures are not supported on this version of MySQL.
+
+
+
+
+ Looks up a localized string similar to The certificate authority (CA) does not match..
+
+
+
+
+ Looks up a localized string similar to The host name does not match the name on the certificate..
+
+
+
+
+ Looks up a localized string similar to The certificate is not a certificate authority (CA)..
+
+
+
+
+ Looks up a localized string similar to SSL Connection error..
+
+
+
+
+ Looks up a localized string similar to Connection protocol '{0}' does not support SSL connections..
+
+
+
+
+ Looks up a localized string similar to The stream has already been closed.
+
+
+
+
+ Looks up a localized string similar to The stream does not support reading.
+
+
+
+
+ Looks up a localized string similar to The stream does not support writing.
+
+
+
+
+ Looks up a localized string similar to String can't be empty..
+
+
+
+
+ Looks up a localized string similar to Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding..
+
+
+
+
+ Looks up a localized string similar to error connecting: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached..
+
+
+
+
+ Looks up a localized string similar to All server connection attempts were aborted. Timeout of {0} seconds was exceeded for each selected server..
+
+
+
+
+ Looks up a localized string similar to Specified list of TLS versions only contains non valid TLS protocols. Accepted values are TLSv1.2 and TLSv1.3.
+
+
+
+
+ Looks up a localized string similar to TLS protocols TLSv1 and TLSv1.1 are no longer supported. Accepted values are TLSv1.2 and TLSv1.3.
+
+
+
+
+ Looks up a localized string similar to TLSv1.3 is not supported by this framework..
+
+
+
+
+ Looks up a localized string similar to Specified list of TLS versions is empty. Accepted values are TLSv1.2 and TLSv1.3.
+
+
+
+
+ Looks up a localized string similar to {0}: Connection Closed.
+
+
+
+
+ Looks up a localized string similar to Unable to trace. There are more than Int32.MaxValue connections in use..
+
+
+
+
+ Looks up a localized string similar to {0}: Error encountered during row fetch. Number = {1}, Message={2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Connection Opened: connection string = '{1}'.
+
+
+
+
+ Looks up a localized string similar to {0}: Error encountered attempting to open result: Number={1}, Message={2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Query Closed.
+
+
+
+
+ Looks up a localized string similar to {0}: Query Normalized: {2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Query Opened: {2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Resultset Opened: field(s) = {1}, affected rows = {2}, inserted id = {3}.
+
+
+
+
+ Looks up a localized string similar to {0}: Resultset Closed. Total rows={1}, skipped rows={2}, size (bytes)={3}.
+
+
+
+
+ Looks up a localized string similar to {0}: Set Database: {1}.
+
+
+
+
+ Looks up a localized string similar to {0}: Statement closed: statement id = {1}.
+
+
+
+
+ Looks up a localized string similar to {0}: Statement executed: statement id = {1}.
+
+
+
+
+ Looks up a localized string similar to {0}: Statement prepared: sql='{1}', statement id={2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Usage Advisor Warning: Query is using a bad index.
+
+
+
+
+ Looks up a localized string similar to {0}: Usage Advisor Warning: The field '{2}' was converted to the following types: {3}.
+
+
+
+
+ Looks up a localized string similar to {0}: Usage Advisor Warning: Query does not use an index.
+
+
+
+
+ Looks up a localized string similar to {0}: Usage Advisor Warning: The following columns were not accessed: {2}.
+
+
+
+
+ Looks up a localized string similar to {0}: Usage Advisor Warning: Skipped {2} rows. Consider a more focused query..
+
+
+
+
+ Looks up a localized string similar to {0}: MySql Warning: Level={1}, Code={2}, Message={3}.
+
+
+
+
+ Looks up a localized string similar to Type '{0}' is not derived from BaseCommandInterceptor.
+
+
+
+
+ Looks up a localized string similar to Type '{0}' is not derived from BaseExceptionInterceptor.
+
+
+
+
+ Looks up a localized string similar to Unable to connect to any of the specified MySQL hosts..
+
+
+
+
+ Looks up a localized string similar to Unable to create plugin for authentication method '{0}'. Please see inner exception for details..
+
+
+
+
+ Looks up a localized string similar to Unable to derive stored routine parameters. The 'Parameters' information schema table is not available and access to the stored procedure body has been disabled..
+
+
+
+
+ Looks up a localized string similar to Unable to enable query analysis. Be sure the MySql.Data.EMTrace assembly is properly located and registered..
+
+
+
+
+ Looks up a localized string similar to An error occured attempting to enumerate the user-defined functions. Do you have SELECT privileges on the mysql.func table?.
+
+
+
+
+ Looks up a localized string similar to Unable to execute stored procedure '{0}'..
+
+
+
+
+ Looks up a localized string similar to There was an error parsing the foreign key definition..
+
+
+
+
+ Looks up a localized string similar to Error encountered reading the RSA public key..
+
+
+
+
+ Looks up a localized string similar to Unable to retrieve stored procedure metadata for routine '{0}'. Either grant SELECT privilege to mysql.proc for this user or use "check parameters=false" with your connection string..
+
+
+
+
+ Looks up a localized string similar to Unable to start a second async operation while one is running..
+
+
+
+
+ Looks up a localized string similar to Unix sockets are not supported on Windows.
+
+
+
+
+ Looks up a localized string similar to Unknown authentication method '{0}' was requested..
+
+
+
+
+ Looks up a localized string similar to Unknown connection protocol.
+
+
+
+
+ Looks up a localized string similar to MySQL user '{0}' does not equal the logged-in Windows user '{1}'..
+
+
+
+
+ Looks up a localized string similar to Trying to upload a file from outside the path set on 'allowloadlocalinfileinpath' is invalid..
+
+
+
+
+ Looks up a localized string similar to Value '{0}' is not of the correct type..
+
+
+
+
+ Looks up a localized string similar to The requested column value could not be treated as or conveted to a Guid..
+
+
+
+
+ Looks up a localized string similar to An event handler for WebAuthnActionRequested was not specified..
+
+
+
+
+ Looks up a localized string similar to The timeout of 15 seconds for user interaction with FIDO device has been exceeded..
+
+
+
+
+ Looks up a localized string similar to Windows authentication connections are not supported on {0}.
+
+
+
+
+ Looks up a localized string similar to Writing to the stream failed..
+
+
+
+
+ Looks up a localized string similar to Parameter '{0}' is not found but a parameter with the name '{1}' is found. Parameter names must include the leading parameter marker..
+
+
+
+
+ A strongly-typed resource class, for looking up localized strings, etc.
+
+
+
+
+ Returns the cached ResourceManager instance used by this class.
+
+
+
+
+ Overrides the current thread's CurrentUICulture property for all
+ resource lookups using this strongly typed resource class.
+
+
+
+
+ Looks up a localized string similar to Appdata path is not defined..
+
+
+
+
+ Looks up a localized string similar to Authentication failed using MYSQL41 and SHA256_MEMORY. Check the user name and password or try using a secure connection..
+
+
+
+
+ Looks up a localized string similar to You can't get more sessions because Client is closed..
+
+
+
+
+ Looks up a localized string similar to Client option '{0}' does not support value '{1}'..
+
+
+
+
+ Looks up a localized string similar to Client option '{0}' is not recognized as valid..
+
+
+
+
+ Looks up a localized string similar to {0} '{1}' does not exist in schema '{2}'..
+
+
+
+
+ Looks up a localized string similar to Compression requested but the compression algorithm negotiation failed..
+
+
+
+
+ Looks up a localized string similar to Compression using {0} is not supported..
+
+
+
+
+ Looks up a localized string similar to Compression using {0} is not supported in .NET Framework..
+
+
+
+
+ Looks up a localized string similar to The connection property 'compression' acceptable values are: 'preferred', 'required' or 'disabled'. The value '{0}' is not acceptable..
+
+
+
+
+ Looks up a localized string similar to Compression is not enabled..
+
+
+
+
+ Looks up a localized string similar to Compression requested but the server does not support it..
+
+
+
+
+ Looks up a localized string similar to There are still decompressed messages pending to be processed..
+
+
+
+
+ Looks up a localized string similar to Custom type mapping is only supported from .NET Core 3.1 and later..
+
+
+
+
+ Looks up a localized string similar to '{0}' cannot be set to false with DNS SRV lookup enabled..
+
+
+
+
+ Looks up a localized string similar to Scheme '{0}' is not valid..
+
+
+
+
+ Looks up a localized string similar to The document path cannot be null or an empty string..
+
+
+
+
+ Looks up a localized string similar to Duplicate key '{0}' used in "connection-attributes"..
+
+
+
+
+ Looks up a localized string similar to Key name in connection attribute cannot be an empty string..
+
+
+
+
+ Looks up a localized string similar to At least one option must be specified..
+
+
+
+
+ Looks up a localized string similar to This feature is currently not supported..
+
+
+
+
+ Looks up a localized string similar to This functionality is only supported in MySQL {0} and higher..
+
+
+
+
+ Looks up a localized string similar to Collation with id '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to The value of "connection-attributes" must be either a boolean or a list of key-value pairs..
+
+
+
+
+ Looks up a localized string similar to Connection Data is incorrect..
+
+
+
+
+ Looks up a localized string similar to The connection string is invalid..
+
+
+
+
+ Looks up a localized string similar to '{0}' is not a valid connection string attribute..
+
+
+
+
+ Looks up a localized string similar to The connection timeout value must be a positive integer (including 0)..
+
+
+
+
+ Looks up a localized string similar to Decimal (BCD) format is invalid..
+
+
+
+
+ Looks up a localized string similar to Field type with name '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to Index type with name '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to The value provided is not a valid JSON document. {0}.
+
+
+
+
+ Looks up a localized string similar to {0} is not a valid column name in the row..
+
+
+
+
+ Looks up a localized string similar to {0} is not a valid index for the row..
+
+
+
+
+ Looks up a localized string similar to Session state is not valid..
+
+
+
+
+ Looks up a localized string similar to Invalid Uri .
+
+
+
+
+ Looks up a localized string similar to Invalid uri query value.
+
+
+
+
+ Looks up a localized string similar to Key names in "connection-attributes" cannot start with "_"..
+
+
+
+
+ Looks up a localized string similar to Json configuration must contain 'uri' or 'host' but not both..
+
+
+
+
+ Looks up a localized string similar to Keyword '{0}' not found..
+
+
+
+
+ Looks up a localized string similar to Keyword not supported..
+
+
+
+
+ Looks up a localized string similar to Field '{0}' is mandatory..
+
+
+
+
+ Looks up a localized string similar to Missed required schema option..
+
+
+
+
+ Looks up a localized string similar to More than one document id was generated. Please use the DocumentIds property instead..
+
+
+
+
+ Looks up a localized string similar to There is no data at index {0}.
+
+
+
+
+ Looks up a localized string similar to No 'host' has been specified..
+
+
+
+
+ Looks up a localized string similar to No more data in resultset..
+
+
+
+
+ Looks up a localized string similar to Object '{0}' not found.
+
+
+
+
+ Looks up a localized string similar to No placeholders..
+
+
+
+
+ Looks up a localized string similar to Connection closed. Reason: connection idle was too long.
+
+
+
+
+ Looks up a localized string similar to Connection closed. Reason: connection was killed by a different session.
+
+
+
+
+ Looks up a localized string similar to Connection closed. Reason: server was shutdown.
+
+
+
+
+ Looks up a localized string similar to {0} must be a value greater than 0..
+
+
+
+
+ Looks up a localized string similar to Path not found '{0}'..
+
+
+
+
+ Looks up a localized string similar to Queue timeout expired. The timeout period elapsed prior to getting a session from the pool..
+
+
+
+
+ Looks up a localized string similar to Providing a port number as part of the host address isn't supported when using connection strings in basic format or anonymous objects. Use URI format instead..
+
+
+
+
+ Looks up a localized string similar to You must either assign no priority to any of the hosts or give a priority for every host..
+
+
+
+
+ Looks up a localized string similar to The priority must be between 0 and 100..
+
+
+
+
+ Looks up a localized string similar to ProgramData path is not defined..
+
+
+
+
+ Looks up a localized string similar to Replacement document has an '_id' that is
+ different from the matched document..
+
+
+
+
+ Looks up a localized string similar to The server doesn't support the requested operation. Please update the MySQL Server, client library, or both..
+
+
+
+
+ Looks up a localized string similar to The process of closing the resultset and resulted in results being lost..
+
+
+
+
+ Looks up a localized string similar to All server connection attempts were aborted. Timeout of {0} milliseconds was exceeded for each selected server..
+
+
+
+
+ Looks up a localized string similar to All server connection attempts were aborted. Timeout was exceeded for each selected server..
+
+
+
+
+ Looks up a localized string similar to Connection attempt to the server was aborted. Timeout of {0} milliseconds was exceeded..
+
+
+
+
+ Looks up a localized string similar to Connection attempt to the server was aborted. Timeout was exceeded..
+
+
+
+
+ Looks up a localized string similar to Unable to connect to any specified host..
+
+
+
+
+ Looks up a localized string similar to Unable to read or decode data value..
+
+
+
+
+ Looks up a localized string similar to Unable to open a session..
+
+
+
+
+ Looks up a localized string similar to Unexpected end of packet found while reading data values.
+
+
+
+
+ Looks up a localized string similar to Field name '{0}' is not allowed..
+
+
+
+
+ Looks up a localized string similar to Unknown placeholder :{0}.
+
+
+
+
+ Looks up a localized string similar to Value '{0}' is not of the correct type..
+
+
+
+
+ Summary description for MySqlUInt64.
+
+
+
+
+ An exception thrown by MySQL when a type conversion does not succeed.
+
+
+
+ Initializes a new instance of the class with a specified error message.
+ Message describing the error.
+
+
+
+ Represents a datetime data type object in a MySql database.
+
+
+
+
+ Defines whether the UTF or local timezone will be used.
+
+
+
+
+ Constructs a new MySqlDateTime object by setting the individual time properties to
+ the given values.
+
+ The year to use.
+ The month to use.
+ The day to use.
+ The hour to use.
+ The minute to use.
+ The second to use.
+ The microsecond to use.
+
+
+
+ Constructs a new MySqlDateTime object by using values from the given object.
+
+ The object to copy.
+
+
+
+ Constructs a new MySqlDateTime object by copying the current value of the given object.
+
+ The MySqlDateTime object to copy.
+
+
+
+ Enables the contruction of a MySqlDateTime object by parsing a string.
+
+
+
+
+ Indicates if this object contains a value that can be represented as a DateTime
+
+
+
+ Returns the year portion of this datetime
+
+
+ Returns the month portion of this datetime
+
+
+ Returns the day portion of this datetime
+
+
+ Returns the hour portion of this datetime
+
+
+ Returns the minute portion of this datetime
+
+
+ Returns the second portion of this datetime
+
+
+
+ Returns the milliseconds portion of this datetime
+ expressed as a value between 0 and 999
+
+
+
+
+ Returns the microseconds portion of this datetime (6 digit precision)
+
+
+
+
+ Returns true if this datetime object has a null value
+
+
+
+
+ Retrieves the value of this as a DateTime object.
+
+
+
+ Returns this value as a DateTime
+
+
+ Returns a MySQL specific string representation of this value
+
+
+
+
+
+
+
+
+ Represents a decimal data type object in a MySql database.
+
+
+
+
+ Gets a boolean value signaling if the type is null.
+
+
+
+
+ Gets or sets the decimal precision of the type.
+
+
+
+
+ Gets or sets the scale of the type.
+
+
+
+
+ Gets the decimal value associated to this type.
+
+
+
+
+ Converts this decimal value to a double value.
+
+ The value of this type converted to a dobule value.
+
+
+
+ Represents a geometry data type object in a MySql database.
+
+
+
+
+ Gets the x coordinate.
+
+
+
+
+ Gets the y coordinate.
+
+
+
+
+ Gets the SRID value.
+
+
+
+
+ Gets a boolean value that signals if the type is null.
+
+
+
+
+ Gets the value associated to this type.
+
+
+
+
+ Gets the value associated to this type.
+
+
+
+ Returns the Well-Known Text representation of this value
+ POINT({0} {1})", longitude, latitude
+ http://dev.mysql.com/doc/refman/4.1/en/gis-wkt-format.html
+
+
+
+ Get value from WKT format
+ SRID=0;POINT (x y) or POINT (x y)
+
+ WKT string format
+
+
+
+ Try to get value from WKT format
+ SRID=0;POINT (x y) or POINT (x y)
+
+ WKT string format
+ Out mysqlGeometryValue
+
+
+
+ Sets the DSInfo when GetSchema is called for the DataSourceInformation collection.
+
+
+
+
+ Gets the well-known text representation of the geomtry object.
+
+ A string representation of the WKT.
+
+
+
+ Enables X Protocol packets from the network stream to be retrieved and processed
+
+
+
+
+ The instance of the stream that holds the network connection with MySQL Server.
+
+
+
+
+ This field is used to enable compression and decompression actions in the communication channel.
+
+
+
+
+ A Queue to store the pending packets removed from the
+
+
+
+
+ Creates a new instance of XPacketProcessor.
+
+ The stream to be used as communication channel.
+
+
+
+ Creates a new instance of XPacketProcessor.
+
+ The stream to be used as communication channel.
+ The XCompressionController to be used for compression actions.
+
+
+
+ Identifies the kind of packet received over the network and execute
+ the corresponding processing.
+
+
+
+
+ Reads data from the network stream and create a packet of type .
+
+ A .
+
+
+
+ Sends the read/write actions to the MyNetworkStream class.
+
+
+
+
+ Reads the pending packets present in the network channel and processes them accordingly.
+
+
+
+
+ Implementation of EXTERNAL authentication type.
+
+
+
+
+ Implementation of MySQL41 authentication type.
+
+
+
+
+ Implementation of PLAIN authentication type.
+
+
+
+
+ Compares two Guids in string format.
+
+ The first string to compare.
+ The first string to compare.
+ An integer that indicates the lexical relationship between the two comparands, similar to
+
+
+
+ Compares two objects.
+
+ The first to compare.
+ The second to compare.
+ An integer that indicates the lexical relationship between the two comparands, similar to
+
+
+
+ Provides functionality for loading unmanaged libraries.
+
+
+
+
+ Loads the specified unmanaged library from the embedded resources.
+
+ The application name.
+ The library name.
+
+
+
+ Provides support for configuring X Protocol compressed messages.
+
+
+
+
+ The capabilities sub-key used to specify the compression algorithm.
+
+
+
+
+ The capabilities key used to specify the compression capability.
+
+
+
+
+ Messages with a value lower than this threshold will not be compressed.
+
+
+
+
+ Default value for enabling or disabling combined compressed messages.
+
+
+
+
+ Default value for the maximum number of combined compressed messages contained in a compression message.
+
+
+
+
+ The capabilities sub-key used to specify if combining compressed messages is permitted.
+
+
+
+
+ The capabilities sub-key used to specify the maximum number of compressed messages contained in a compression message.
+
+
+
+
+ Buffer used to store the data received from the server.
+
+
+
+
+ Deflate stream used for compressing data.
+
+
+
+
+ Deflate stream used for decompressing data.
+
+
+
+
+ Flag indicating if the initialization is for compression or decompression.
+
+
+
+
+ Stores the communication packet generated the last time ReadNextBufferedMessage method was called.
+
+
+
+
+ Stream used to store multiple X Protocol messages.
+
+
+
+
+ ZStandard stream used for decompressing data.
+
+
+
+
+ Main constructor used to set the compression algorithm and initialize the list of messages to
+ be compressed by the client.
+
+ The compression algorithm to use.
+ Flag indicating if the initialization is for compression or decompression.
+
+
+
+ Gets or sets the list of messages that should be compressed by the client when compression is enabled.
+
+
+
+
+ Gets or sets the compression algorithm.
+
+
+
+
+ Flag indicating if compression is enabled.
+
+
+
+
+ Flag indicating if the last decompressed message contains multiple messages.
+
+
+
+
+ General method used to compress data using the compression algorithm defined in the constructor.
+
+ The data to compress.
+ A compressed byte array.
+
+
+
+ Compresses data using the deflate_stream algorithm.
+
+ The data to compress.
+ A compressed byte array.
+
+
+
+ Compresses data using the lz4_message algorithm.
+
+ The data to compress.
+ A compressed byte array.
+
+
+
+ Compresses data using the zstd_stream algorithm.
+
+ The data to compress.
+ A compressed byte array.
+
+
+
+ General method used to decompress data using the compression algorithm defined in the constructor.
+
+ The data to decompress.
+ The expected length of the decompressed data.
+ A decompressed byte array.
+
+
+
+ Decompresses data using the deflate_stream compression algorithm.
+
+ The data to decompress.
+ The expected length of the decompressed data.
+ A decompressed byte array.
+
+
+
+ Decompresses data using the lz4_message compression algorithm.
+
+ The data to decompress.
+ The expected length of the decompressed data.
+ A decompressed byte array.
+
+
+
+ Decompresses data using the zstd_stream compression algorithm.
+
+ The data to decompress.
+ The expected length of the decompressed data.
+ A decompressed byte array.
+
+
+
+ Closes and disposes of any open streams.
+
+
+
+
+ Gets the byte array representing the next X Protocol frame that is stored in cache.
+
+ A byte array representing an X Protocol frame.
+
+
+
+ Gets a representing the next X Protocol frame that is stored in cache.
+
+ A with the next X Protocol frame.
+
+
+
+ Constructor that sets the stream used to read or write data.
+
+ The stream used to read or write data.
+ The socket to use.
+
+
+
+ Constructor that sets the stream used to read or write data and the compression controller.
+
+ The stream used to read or write data.
+ The compression controller for reading.
+ The compression controller for writing.
+ The socket to use.
+
+
+
+ Gets or sets the compression controller uses to manage compression operations.
+
+
+
+
+ Writes X Protocol frames to the X Plugin.
+
+ The integer representation of the client message identifier used for the message.
+ The message to include in the X Protocol frame.
+
+
+
+ Writes X Protocol frames to the X Plugin.
+
+ The client message identifier used for the message.
+ The message to include in the X Protocol frame.
+
+
+
+ Reads X Protocol frames incoming from the X Plugin.
+
+ A instance representing the X Protocol frame that was read.
+
+
+
+ Abstract class for the protocol base operations in client/server communication.
+
+
+
+
+ Expression parser for MySQL-X protocol.
+
+
+ string being parsed.
+
+
+ Token stream produced by lexer.
+
+
+ Parser's position in token stream.
+
+
+ Mapping of names to positions for named placeholders. Used for both string values ":arg" and numeric values ":2".
+
+
+ Number of positional placeholders.
+
+
+ Are relational columns identifiers allowed?
+
+
+ Token types used by the lexer.
+
+
+ Token. Includes type and string value of the token.
+
+
+ Mapping of reserved words to token types.
+
+
+ Does the next character equal the given character? (respects bounds)
+
+
+ Helper function to match integer or floating point numbers. This function should be called when the position is on the first character of the number (a
+ digit or '.').
+
+ @param i The current position in the string
+ @return the next position in the string after the number.
+
+
+ Lexer for MySQL-X expression language.
+
+
+ Assert that the token at pos is of type type.
+
+
+ Does the current token have type `t'?
+
+
+ Does the next token have type `t'?
+
+
+ Does the token at position `pos' have type `t'?
+
+
+ Consume token.
+
+ @return the string value of the consumed token
+
+
+ Parse a paren-enclosed expression list. This is used for function params or IN params.
+
+ @return a List of expressions
+
+
+ Parse a function call of the form: IDENTIFIER PAREN_EXPR_LIST.
+
+ @return an Expr representing the function call.
+
+
+ Parse an identifier for a function call: [schema.]name
+
+
+ Parse a document path member.
+
+
+ Parse a document path array index.
+
+
+ Parse a JSON-style document path, like WL#7909, but prefix by @. instead of $.
+
+
+ Parse a document field.
+
+
+ Parse a column identifier (which may optionally include a JSON document path).
+
+
+ Build a unary operator expression.
+
+
+ Parse an atomic expression. (c.f. grammar at top)
+
+
+ Parse a left-associated binary operator.
+
+ @param types
+ The token types that denote this operator.
+ @param innerParser
+ The inner parser that should be called to parse operands.
+ @return an expression tree of the binary operator or a single operand
+
+
+ Parse the entire string as an expression.
+
+ @return an X-protocol expression tree
+
+
+
+ Parse an ORDER BY specification which is a comma-separated list of expressions, each may be optionally suffixed by ASC/DESC.
+
+
+ Parse a SELECT projection which is a comma-separated list of expressions, each optionally suffixed with a target alias.
+
+
+ Parse an INSERT field name.
+ @todo unit test
+
+
+ Parse an UPDATE field which can include can document paths.
+
+
+ Parse a document projection which is similar to SELECT but with document paths as the target alias.
+
+
+ Parse a list of expressions used for GROUP BY.
+
+
+ @return the number of positional placeholders in the expression.
+
+
+ @return a mapping of parameter names to positions.
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar NULL type.
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar DOUBLE type (wrapped in Any).
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar SINT (signed int) type (wrapped in Any).
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar UINT (unsigned int) type (wrapped in Any).
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar STRING type (wrapped in Any).
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar OCTETS type (wrapped in Any).
+
+
+ Proto-buf helper to build a LITERAL Expr with a Scalar BOOL type (wrapped in Any).
+
+
+ Wrap an Any value in a LITERAL expression.
+
+
+ Build an Any with a string value.
+
+
+
+ Parses an anonymous object into a dictionary.
+
+ The object to parse.
+ A dictionary if the provided object is an anonymous object; otherwise, null.
+
+
+ List of operators which will be serialized as infix operators.
+
+
+ Scalar to string.
+
+
+ JSON document path to string.
+
+
+ Column identifier (or JSON path) to string.
+
+
+ Function call to string.
+
+
+ Create a string from a list of (already stringified) parameters. Surround by parens and separate by commas.
+
+
+ Convert an operator to a string. Includes special cases for chosen infix operators (AND, OR) and special forms such as LIKE and BETWEEN.
+
+
+ Escape a string literal.
+
+
+ Quote a named identifer.
+
+
+ Serialize an expression to a string.
+
+
+
+ Build the message to be sent to MySQL Server to execute statement "Create" or "Modify" collection with schema options
+
+ The namespace
+ The name of the command to be executed on MySql Server
+ Array of KeyValuePairs with the parameters required to build the message
+ void.
+
+
+
+ Sends the delete documents message
+
+
+
+
+ Sends the CRUD modify message
+
+
+
+
+ Class implementation for a default communication kind.
+
+
+
+
+ Constructor method for the communication routing service
+
+ A MySqlXConnectionStringBuilder setted with the information to use in the connection
+
+
+
+ Gets the current connection base on the connection mode
+
+ One of the values of ConnectionMode Offline, ReadOnly, WriteOnly, ReadWrite
+
+
+
+
+ Abstract class used to define the kind of server in environments with multiple types of distributed systems.
+
+
+
+
+ Main class for parsing json strings.
+
+
+
+
+ Initializes a new instance of the JsonParser class.
+
+
+
+
+ Parses the received string into a dictionary.
+
+ The string to parse.
+ A object that represents the parsed string.
+
+
+
+ Abstract class to manage and encapsulate one or more actual connections.
+
+
+
+
+ Creates a new session object with the values of the settings parameter.
+
+ Settings to be used in the session object
+
+
+
+ Sets the connection's charset default collation.
+
+ The opened session.
+ The character set.
+
+
+
+ Gets the version of the server.
+
+ An instance of containing the server version.
+
+
+
+ Gets the thread Id of the connection.
+
+ Thread Id
+
+
+
+ Implementation class for object that manages low-level work of queuing tasks onto threads.
+
+
+
+
+ Implementation class of InternalSession to manage connections using the Xprotocol type object.
+
+
+
+
+ Defines the compression controller that will be passed on the instance when
+ compression is enabled.
+
+
+
+
+ Defines the compression controller that will be passed on the instance when
+ compression is enabled.
+
+
+
+
+ Reorder the list of algorithms retrieved from server to the preferred order
+
+
+
+
+ Validate the algorithms given in the connection string are valid compared with enum CompressionAlgorithms
+
+
+
+
+ Negotiates compression capabilities with the server.
+
+ An array containing the compression algorithms supported by the server.
+ An array containing the compression algorithms given by user/client.
+
+
+
+ Prepare the dictionary of arguments required to create a MySQL message.
+
+ The name of the MySQL schema.
+ The name of the collection.
+ This object hold the parameters required to create the collection.
+
+ Collection referente.
+
+
+
+ Prepare the dictionary of arguments required to Modify a MySQL message.
+
+ The name of the MySQL schema.
+ The name of the collection.
+ This object hold the parameters required to Modify the collection.
+
+
+
+
+ Gets the compression algorithm being used to compress or decompress data.
+
+ Flag to indicate if the compression algorithm should be
+ retrieved from the reader or writer controller.
+ The name of the compression algorithm being used if any.
+ null if no compression algorithm is being used.
+
+
+
+ Represents a base class for a Session.
+
+
+
+
+ Flag to set if prepared statements are supported.
+
+
+
+
+ Gets the connection settings for this session.
+
+
+
+
+ Gets the currently active schema.
+
+
+
+
+ Gets the default schema provided when creating the session.
+
+
+
+
+ Gets the connection uri representation of the connection options provided during the creation of the session.
+
+
+
+
+ Initializes a new instance of the BaseSession class based on the specified connection string.
+
+ The connection used to create the session.
+ A object.
+ is null.
+ Unable to parse the when
+ in URI format.
+
+ When using Unix sockets the protocol=unix or protocol=unixsocket connection option is required.
+ This will enable elements passed in the server connection option to be treated as Unix sockets. The user is also required
+ to explicitly set sslmode to none since X Plugin does not support SSL when using Unix sockets. Note that
+ protocol=unix and protocol=unixsocket are synonyms.
+
+ Multiple hosts can be specified as part of the ,
+ which enables client-side failover when trying to establish a connection.
+
+ Connection URI examples:
+ - mysqlx://test:test@[192.1.10.10,localhost]
+ - mysqlx://test:test@[192.1.10.10,127.0.0.1]
+ - mysqlx://root:@[../tmp/mysqlx.sock,/tmp/mysqld.sock]?protocol=unix&sslmode=none
+ - mysqlx://test:test@[192.1.10.10:33060,127.0.0.1:33060]
+ - mysqlx://test:test@[192.1.10.10,120.0.0.2:22000,[::1]:33060]/test?connectiontimeout=10
+ - mysqlx://test:test@[(address=server.example,priority=20),(address=127.0.0.1,priority=100)]
+ - mysqlx://test:test@[(address=server.example,priority=100),(address=127.0.0.1,priority=75),(address=192.0.10.56,priority=25)]
+
+
+ Connection string examples:
+ - server=10.10.10.10,localhost;port=33060;uid=test;password=test;
+ - host=10.10.10.10,192.101.10.2,localhost;port=5202;uid=test;password=test;
+ - host=./tmp/mysqld.sock,/var/run/mysqldx.sock;port=5202;uid=root;protocol=unix;sslmode=none;
+ - server=(address=server.example,priority=20),(address=127.0.0.1,priority=100);port=33060;uid=test;password=test;
+ - server=(address=server.example,priority=100),(address=127.0.0.1,priority=75),(address=192.0.10.56,priority=25);port=33060;uid=test;password=test;
+
+
+ Failover methods
+ - Sequential: Connection attempts will be performed in a sequential order, that is, one after another until
+ a connection is successful or all the elements from the list have been tried.
+
+ - Priority based: If a priority is provided, the connection attemps will be performed in descending order, starting
+ with the host with the highest priority. Priority must be a value between 0 and 100. Additionally, it is required to either
+ give a priority for every host or no priority to any host.
+
+
+
+
+
+ Initializes a new instance of the BaseSession class based on the specified anonymous type object.
+
+ The connection data as an anonymous type used to create the session.
+ A object.
+ is null.
+
+ Multiple hosts can be specified as part of the , which enables client-side failover when trying to
+ establish a connection.
+
+ To assign multiple hosts, create a property similar to the connection string examples shown in
+ . Note that the value of the property must be a string.
+
+
+
+
+
+ Drops the database/schema with the given name.
+
+ The name of the schema.
+ is null.
+
+
+
+ Creates a schema/database with the given name.
+
+ The name of the schema/database.
+ A object that matches the recently created schema/database.
+
+
+
+ Gets the schema with the given name.
+
+ The name of the schema.
+ A object set with the provided schema name.
+
+
+
+ Gets a list of schemas (or databases) in this session.
+
+ A list containing all existing schemas (or databases).
+
+
+
+ Starts a new transaction.
+
+
+
+
+ Commits the current transaction.
+
+ A object containing the results of the commit operation.
+
+
+
+ Rolls back the current transaction.
+
+
+
+
+ Closes this session or releases it to the pool.
+
+
+
+
+ Closes this session
+
+
+
+
+ Sets a transaction savepoint with an autogenerated name.
+
+ The autogenerated name of the transaction savepoint.
+
+
+
+ Sets a named transaction savepoint.
+
+ The name of the transaction savepoint.
+ The name of the transaction savepoint.
+
+
+
+ Removes the named savepoint from the set of savepoints within the current transaction.
+
+ The name of the transaction savepoint.
+
+
+
+ Rolls back a transaction to the named savepoint without terminating the transaction.
+
+ The name of the transaction savepoint.
+
+
+
+ Parses the connection data.
+
+ The connection string or connection URI.
+ A object.
+ An updated connection string representation of the provided connection string or connection URI.
+
+
+
+ Parses a connection URI.
+
+ The connection URI to parse.
+ The connection string representation of the provided .
+
+
+
+ Validates if the string provided is a Unix socket file.
+
+ The Unix socket to evaluate.
+ true if is a valid Unix socket; otherwise, false.
+
+
+
+ Converts the URI object into a connection string.
+
+ An instance with the values for the provided connection options.
+ The path of the Unix socket file.
+ If true the replaces the value for the server connection option; otherwise, false
+ Flag indicating if this is a connection using DNS SRV.
+ A connection string.
+
+
+
+ Parses a connection string.
+
+ The connection string to parse.
+ The parsed connection string.
+
+
+
+ Normalizes the Unix socket by removing leading and ending parenthesis as well as removing special characters.
+
+ The Unix socket to normalize.
+ A normalized Unix socket.
+
+
+
+ Disposes the current object. Disposes of the managed state if the flag is set to true.
+
+ Flag to indicate if the managed state is to be disposed.
+
+
+
+ Disposes the current object. Code added to correctly implement the disposable pattern.
+
+
+
+
+ Describes the state of the session.
+
+
+
+
+ The session is closed.
+
+
+
+
+ The session is open.
+
+
+
+
+ The session object is connecting to the data source.
+
+
+
+
+ The session object is executing a command.
+
+
+
+
+ Class encapsulating a session pooling functionality.
+
+
+
+
+ Queue of demoted hosts.
+
+
+
+
+ List of hosts that will be attempted to connect to.
+
+
+
+
+ Timer to be used when a host have been demoted.
+
+
+
+
+ Remove hosts from the demoted list that have already been there for more
+ than 120,000 milliseconds and add them to the available hosts list.
+
+
+
+
+ Get a session from pool or create a new one.
+
+
+
+
+
+ Closes all sessions the Client object created and destroys the managed pool.
+
+
+
+
+ Represents a collection of documents.
+
+
+
+
+ Creates an containing the provided objects that can be used to add
+ one or more items to a collection.
+
+ The objects to add.
+ An object containing the objects to add.
+ is null.
+ This method can take anonymous objects, domain objects, or just plain JSON strings.
+ The statement can be further modified before execution.
+
+
+
+ Creates a with the given condition that can be used to remove
+ one or more documents from a collection.The statement can then be further modified before execution.
+
+ The condition to match documents.
+ A object set with the given condition.
+ is null or white space.
+ The statement can then be further modified before execution.
+
+
+
+ Creates a with the given condition that can be used to modify one or more
+ documents from a collection.
+
+ The condition to match documents.
+ A object set with the given condition.
+ is null or white space.
+ The statement can then be further modified before execution.
+
+
+
+ Replaces the document matching the given identifier.
+
+ The unique identifier of the document to replace.
+ The document to replace the matching document.
+ A object containing the results of the execution.
+ is null or whitespace.
+ is null.
+ This is a direct execution method. Operation succeeds even if no matching document was found;
+ in which case, the Result.RecordsAffected property is zero. If the new document contains an identifier, the value
+ is ignored.
+
+
+
+ Adds the given document to the collection unless the identifier or any other field that has a unique index
+ already exists, in which case it will update the matching document.
+
+ The unique identifier of the document to replace.
+ The document to replace the matching document.
+ A object containing the results of the execution.
+ The server version is lower than 8.0.3.
+ is null or white space.
+ is null.
+ The is different from the one in .
+ This is a direct execution method.
+
+
+
+ Creates a with the given condition, which can be used to find documents in a
+ collection.
+
+ An optional condition to match documents.
+ A object set with the given condition.
+ The statement can then be further modified before execution.
+
+
+
+ Returns the document with the given identifier.
+
+ The unique identifier of the document to replace.
+ A object if a document matching given identifier exists; otherwise, null.
+ is null or white space.
+ This is a direct execution method.
+
+
+
+ Base abstract class that defines elements inherited by all result types.
+
+
+
+
+ Gets the number of records affected by the statement that generated this result.
+
+
+
+
+ Gets the object of the session.
+
+
+
+
+ Gets a read-only collection of objects derived from statement execution.
+
+
+
+
+ Gets the number of warnings in the collection derived from statement execution.
+
+
+
+
+ No action is performed by this method. It is intended to be overriden by child classes if required.
+
+
+
+
+ Base abstract class for API statement.
+
+
+
+
+
+
+ Initializes a new instance of the BaseStatement class based on the specified session.
+
+ The session where the statement will be executed.
+
+
+
+ Gets the that owns the statement.
+
+
+
+
+ Executes the base statements. This method is intended to be defined by child classes.
+
+ A result object containing the details of the execution.
+
+
+
+ Executes a statement asynchronously.
+
+ A result object containing the details of the execution.
+
+
+
+ Validates if the session is open and valid.
+
+
+
+
+ Sets the status as Changed for prepared statement validation.
+
+
+
+
+ Converts a statement to prepared statement for a second execution
+ without any change but Bind, Limit, or Offset.
+
+
+
+
+ Abstract class for buffered results.
+
+ Generic result type.
+
+
+
+ Index of the current item.
+
+
+
+
+ List of generic items in this buffered result.
+
+
+
+
+ Flag that indicates if all items have been read.
+
+
+
+
+ Gets a dictionary containing the column names and their index.
+
+
+
+
+ Gets the page size set for this buffered result.
+
+
+
+
+ Loads the column data into the field.
+
+
+
+
+ Retrieves a read-only list of the generic items associated to this buffered result.
+
+ A generic list representing items in this buffered result.
+
+
+
+ Retrieves one element from the generic items associated to this buffered result.
+
+ A generic object that corresponds to the current or default item.
+
+
+
+ Determines if all items have already been read.
+
+ True if all items have been retrived, false otherwise.
+
+
+
+ Gets the current item.
+
+ All items have already been read.
+
+
+
+ Determines if all items have already been read.
+
+ True if all items have been retrived, false otherwise.
+
+
+
+ Resets the value of the field to zero.
+
+
+
+
+ Gets an representation of this object.
+
+ An representation of this object.
+
+
+
+ Gets an representation of this object.
+
+ An representation of this object.
+
+
+
+ Retrieves a read-only list of the generic items associated to this buffered result.
+
+ A generic list representing items in this buffered result.
+
+
+
+ No body has been defined for this method.
+
+
+
+
+ This object store the required parameters to create a Collection with schema validation.
+
+
+
+
+ If false, throws an exception if the collection exists.
+
+
+
+
+ Object which hold the Level and Schema parameters.
+
+
+
+
+ This object store the required parameters to modify a Collection with schema validation.
+
+
+
+
+ This object store the required parameters to Modify a Collection with schema validation.
+
+
+
+
+ This object store the required parameters to create a Collection with schema validation.
+
+
+
+
+ It can be STRICT to enable schema validation or OFF to disable .
+
+
+
+
+ The JSON which define the rules to be validated in the collection.
+
+
+
+
+ The possible values for parameter Level in Validation object.
+
+
+
+
+ Class to represent an error in this result.
+
+
+
+
+ Numeric code.
+
+
+
+
+ Return code indicating the outcome of the executed SQL statement.
+
+
+
+
+ Error message.
+
+
+
+
+ Initializes a new instance of the ErrorInfo class.
+
+
+
+
+ Abstract class for filterable statements.
+
+ The filterable statement.
+ The database object.
+ The type of result.
+ The type of the implemented object.
+
+
+
+ Initializes a new instance of the FiltarableStatement class based on the target and condition.
+
+ The database object.
+ The optional filter condition.
+
+
+
+ Enables the setting of Where condition for this operation.
+
+ The Where condition.
+ The implementing statement type.
+
+
+
+ Sets the number of items to be returned by the operation.
+
+ The number of items to be returned.
+ The implementing statement type.
+ is equal or lower than 0.
+
+
+
+ Sets the number of items to be skipped before including them into the result.
+
+ The number of items to be skipped.
+ The implementing statement type.
+
+
+
+ Binds the parameter values in filter expression.
+
+ The parameter name.
+ The value of the parameter.
+ A generic object representing the implementing statement type.
+
+
+
+ Binds the parameter values in filter expression.
+
+ The parameters as a DbDoc object.
+ A generic object representing the implementing statement type.
+
+
+
+ Binds the parameter values in filter expression.
+
+ The parameters as a JSON string.
+ The implementing statement type.
+
+
+
+ Binds the parameter values in filter expression.
+
+ The parameters as an anonymous object: new { param1 = value1, param2 = value2, ... }.
+ The implementing statement type.
+
+
+
+ Executes the statement.
+
+ The function to execute.
+ The generic object to use.
+ A generic result object containing the results of the execution.
+
+
+
+ Clones the filterable data but Session and Target remain the
+ same.
+
+ A clone of this filterable statement.
+
+
+
+ Represents a general statement result.
+
+
+
+
+ Gets the last inserted identifier (if there is one) by the statement that generated this result.
+
+
+
+
+ Gets the list of generated identifiers in the order of the Add() calls.
+
+
+
+
+ Abstract class to select a database object target.
+
+ The database object.
+ The execution result.
+ The type of the implemented object.
+
+
+
+ Initializes a new instance of the TargetedBaseStatement class based on the provided target.
+
+ The database object.
+
+
+
+ Gets the database target.
+
+
+
+
+ Represents a warning in this result.
+
+
+
+
+ Numeric value associated to the warning message.
+
+
+
+
+ Error message.
+
+
+
+
+ Strict level for the warning.
+
+
+
+
+ Initializes a new instance of the WarningInfo class based on the code and msg.
+
+ The code for the warning.
+ The error message for the warning.
+
+
+
+ Represents a chaining collection insert statement.
+
+
+
+
+
+ Adds documents to the collection.
+
+ The documents to add.
+ This object.
+ The array is null.
+
+
+
+ Executes the Add statement.
+
+ A object containing the results of the execution.
+
+
+
+ Implementation class for CRUD statements with collections using an index.
+
+
+
+
+
+ Executes this statement.
+
+ A object containing the results of the execution.
+
+
+
+ Represents a collection statement.
+
+ Type of
+ Type of object
+
+
+
+ Converts base s into objects.
+
+ Array of objects to be converted to objects.
+ An enumerable collection of objects.
+
+
+
+ Represents the result of an operation that includes a collection of documents.
+
+
+
+
+
+ Represents a chaining collection find statement.
+
+
+
+
+
+ List of column projections that shall be returned.
+
+ List of columns.
+ This object set with the specified columns or fields.
+
+
+
+ Executes the Find statement.
+
+ A object containing the results of execution and data.
+
+
+
+ Locks matching rows against updates.
+
+ Optional row lock option to use.
+ This same object set with the lock shared option.
+ The server version is lower than 8.0.3.
+
+
+
+ Locks matching rows so no other transaction can read or write to it.
+
+ Optional row lock option to use.
+ This same object set with the lock exclusive option.
+ The server version is lower than 8.0.3.
+
+
+
+ Sets the collection aggregation.
+
+ The field list for aggregation.
+ This same object set with the specified group-by criteria.
+
+
+
+ Filters criteria for aggregated groups.
+
+ The filter criteria for aggregated groups.
+ This same object set with the specified filter criteria.
+
+
+
+ Sets user-defined sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ This same object set with the specified order criteria.
+
+
+
+ Enables the setting of Where condition for this operation.
+
+ The Where condition.
+ This same object set with the specified condition criteria.
+
+
+
+ Represents a chaining collection modify statement.
+
+
+
+
+
+ Sets key and value.
+
+ The document path key.
+ The new value.
+ This object.
+
+
+
+ Changes value for a key.
+
+ The document path key.
+ The new value.
+ This object.
+
+
+
+ Removes keys or values from a document.
+
+ An array of document paths representing the keys to be removed.
+ This object.
+
+
+
+ Creates a object set with the changes to be applied to all matching documents.
+
+ The JSON-formatted object describing the set of changes.
+ A object set with the changes described in .
+ can be a object, an anonymous object, a JSON string or a custom type object.
+ is null.
+ is null or white space.
+
+
+
+ Inserts an item into the specified array.
+
+ The document path key including the index on which the item will be inserted.
+ The value to insert into the array.
+ A object containing the updated array.
+
+
+
+ Appends an item to the specified array.
+
+ The document path key.
+ The value to append to the array.
+ A object containing the updated array.
+
+
+
+ Allows the user to set the sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ A generic object representing the implementing statement type.
+
+
+
+ Enables the setting of Where condition for this operation.
+
+ The Where condition.
+ The implementing statement type.
+
+
+
+ Executes the modify statement.
+
+ A object containing the results of the execution.
+
+
+
+ Represents a chaining collection remove statement.
+
+
+
+
+
+ Sets user-defined sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ A generic object representing the implementing statement type.
+
+
+
+ Enables the setting of Where condition for this operation.
+
+ The Where condition.
+ The implementing statement type.
+
+
+
+ Executes the remove statement.
+
+ A object containing the results of the execution.
+
+
+
+ Represents a database object.
+
+
+
+
+ Gets the session that owns the database object.
+
+
+
+
+ Gets the schema that owns the database object.
+
+
+
+
+ Gets the database object name.
+
+
+
+
+ Verifies that the database object exists in the database.
+
+ True if the object exists in database, false otherwise.
+
+
+
+ Represents a generic document in JSON format.
+
+
+
+
+ Initializes a new instance of the DbDoc class based on the object provided. The value can be a domain object, anonymous object, or JSON string.
+
+ The value for this DbDoc.
+
+
+
+ Gets the value of a document property.
+
+ The key path for the property.
+
+
+
+
+ Gets the identifier of the document.
+
+
+
+
+ Gets a value indicating if this document has an identifier (property named _id with a value).
+
+
+
+
+ Sets a property on this document.
+
+ The key of the property.
+ The new property value.
+
+
+
+ Returns this document in Json format.
+
+ A Json formatted string.
+
+
+
+ Compares this DbDoc with another one.
+
+ The DbDoc to compare to.
+ True if they are equal, false otherwise.
+
+
+
+ Gets a value that serves as a hash function for a particular type.
+
+ A hash code for the current object.
+
+
+
+ Represents a collection of documents with a generic type.
+
+
+
+
+
+ Initializes a new instance of the generic Collection class based on the specified schema
+ and name.
+
+ The object associated to this collection.
+ The name of the collection.
+
+
+
+ Creates an containing the provided generic object. The add
+ statement can be further modified before execution.
+
+ The generic object to add.
+ An object containing the object to add.
+
+
+
+ Creates a with the given condition that can be used to remove
+ one or more documents from a collection.The statement can then be further modified before execution.
+
+ The condition to match documents.
+ A object set with the given condition.
+ is null or white space.
+ The statement can then be further modified before execution.
+
+
+
+ Removes the document with the given identifier.
+
+ The unique identifier of the document to replace.
+ A object containing the results of the execution.
+ is null or white space.
+ This is a direct execution method.
+
+
+
+ Creates a with the given condition that can be used to modify one or more
+ documents from a collection.
+
+ The condition to match documents.
+ A object set with the given condition.
+ is null or white space.
+ The statement can then be further modified before execution.
+
+
+
+ Returns the number of documents in this collection on the server.
+
+ The number of documents found.
+
+
+
+ Creates a with the given condition which can be used to find documents in a
+ collection.
+
+ An optional condition to match documents.
+ A object set with the given condition.
+ The statement can then be further modified before execution.
+
+
+
+ Creates an index based on the properties provided in the JSON document.
+
+ The index name.
+ JSON document describing the index to be created.
+
+ is a JSON document with the following fields:
+
+ - fields: array of IndexField objects, each describing a single document member to be
+ included in the index (see below).
+ - type: string, (optional) the type of index. One of INDEX or SPATIAL. Default is INDEX and may
+ be omitted.
+
+
+ A single IndexField description consists of the following fields:
+
+ - field: string, the full document path to the document member or field to be indexed.
+ - type: string, one of the supported SQL column types to map the field into (see the following list).
+ For numeric types, the optional UNSIGNED keyword may follow. For the TEXT type, the length to consider for
+ indexing may be added.
+ - required: bool, (optional) true if the field is required to exist in the document. defaults to
+ false, except for GEOJSON where it defaults to true.
+ - options: int, (optional) special option flags for use when decoding GEOJSON data.
+ - srid: int, (optional) srid value for use when decoding GEOJSON data.
+
+
+ Supported SQL column types:
+
+ - INT [UNSIGNED]
+ - TINYINT [UNSIGNED]
+ - SMALLINT[UNSIGNED]
+ - MEDIUMINT [UNSIGNED]
+ - INTEGER [UNSIGNED]
+ - BIGINT [UNSIGNED]
+ - REAL [UNSIGNED]
+ - FLOAT [UNSIGNED]
+ - DOUBLE [UNSIGNED]
+ - DECIMAL [UNSIGNED]
+ - NUMERIC [UNSIGNED]
+ - DATE
+ - TIME
+ - TIMESTAMP
+ - DATETIME
+ - TEXT[(length)]
+ - CHAR[(lenght)]
+ - GEOJSON (extra options: options, srid)
+
+
+
+
+
+ Drops a collection index.
+
+ The index name.
+ is null or white space.
+
+
+
+ Verifies if the current collection exists in the server schema.
+
+ true if the collection exists; otherwise, false.
+
+
+
+ Returns the document with the given identifier.
+
+ The unique identifier of the document to replace.
+ A object if a document matching given identifier exists; otherwise, null.
+ is null or white space.
+ This is a direct execution method.
+
+
+
+ Defines elements that allow to iterate through the contents of various items.
+
+
+
+
+ Initializes a new instance of the Iterator class.
+
+
+
+
+ This method is not yet implemented.
+
+
+
+ Exception is always thrown since the body of the method is not yet implemented.
+
+
+
+ Defines a MySql expression.
+
+
+
+
+ Main class for session operations related to Connector/NET implementation of the X DevAPI.
+
+
+
+
+ Opens a session to the server given or to the first available server if multiple servers were specified.
+
+ The connection string or URI string format.
+
+ A object representing the established session.
+ Multiple hosts can be specified as part of the which
+ will enable client side failover when trying to establish a connection. For additional details and syntax
+ examples refer to the remarks section.
+
+
+
+ Opens a session to the server given.
+
+ The connection data for the server.
+
+ A object representing the established session.
+
+
+
+ Creates a new instance.
+
+ The connection string or URI string format.
+
+ The connection options in JSON string format.
+ A object representing a session pool.
+
+
+
+ Creates a new instance.
+
+ The connection string or URI string format.
+
+ The connection options in object format.
+
+
+ new { pooling = new
+ {
+ enabled = true,
+ maxSize = 15,
+ maxIdleTime = 60000,
+ queueTimeout = 60000
+ }
+ }
+
+
+
+ A object representing a session pool.
+
+
+
+ Creates a new instance.
+
+ The connection data.
+
+ The connection options in JSON string format.
+ A object representing a session pool.
+
+
+
+ Creates a new instance.
+
+ The connection data.
+
+ The connection options in object format.
+
+
+ new { pooling = new
+ {
+ enabled = true,
+ maxSize = 15,
+ maxIdleTime = 60000,
+ queueTimeout = 60000
+ }
+ }
+
+
+
+ A object representing a session pool.
+
+
+
+ Enables the creation of connection strings by exposing the connection options as properties.
+ Contains connection options specific to the X protocol.
+
+
+
+
+ Main constructor.
+
+
+
+
+ Constructor accepting a connection string.
+
+ The connection string.
+ A flag indicating if the default port is used in the connection.
+
+
+
+ Readonly field containing a collection of classic protocol and protocol shared connection options.
+
+
+
+
+ Gets or sets the connection timeout.
+
+
+
+
+ Gets or sets the connection attributes.
+
+
+
+
+ Path to a local file containing certificate revocation lists.
+
+
+
+
+ Gets or sets the compression type between client and server.
+
+
+
+
+ Gets or sets the compression algorithm.
+
+
+
+
+ Gets or sets a connection option.
+
+ The keyword that identifies the connection option to modify.
+
+
+
+ Retrieves the value corresponding to the supplied key from this .
+
+ The key of the item to retrieve.
+ The value corresponding to the .
+ if was found within the connection string;
+ otherwise, .
+ contains a null value.
+
+
+
+ Represents a table column.
+
+
+
+
+ Gets the original column name.
+
+
+
+
+ Gets the alias of the column name.
+
+
+
+
+ Gets the table name the column orginates from.
+
+
+
+
+ Gets the alias of the table name .
+
+
+
+
+ Gets the schema name the column originates from.
+
+
+
+
+ Gets the catalog the schema originates from.
+ In MySQL protocol this is `def` by default.
+
+
+
+
+ Gets the collation used for this column.
+
+
+
+
+ Gets the character set used for this column.
+
+
+
+
+ Gets the column length.
+
+
+
+
+ Gets the fractional decimal digits for floating point and fixed point numbers.
+
+
+
+
+ Gets the Mysql data type.
+
+
+
+
+ Gets the .NET Clr data type.
+
+
+
+
+ True if it's a signed number.
+
+
+
+
+ True if column is UINT zerofill or BYTES rightpad.
+
+
+
+
+ Initializes a new instance of the Column class.
+
+
+
+
+ Represents a resultset that contains rows of data.
+
+
+
+
+ Gets the columns in this resultset.
+
+
+
+
+ Gets the number of columns in this resultset.
+
+
+
+
+ Gets a list containing the column names in this resultset.
+
+
+
+
+ Gets the rows of this resultset. This collection will be incomplete unless all the rows have been read
+ either by using the Next method or the Buffer method.
+
+
+
+
+ Gets the value of the column value at the current index.
+
+ The column index.
+ The CLR value at the column index.
+
+
+
+ Allows getting the value of the column value at the current index.
+
+ The column index.
+ The CLR value at the column index.
+
+
+
+ Returns the index of the given column name.
+
+ The name of the column to find.
+ The numeric index of column.
+
+
+
+ Represents a single row of data in a table.
+
+
+
+
+ Gets the value of the row at the given index.
+
+ The column index to retrieve the value.
+ The value at the index.
+
+
+
+ Gets the value of the column as a string.
+
+ The name of the column.
+ The value of the column as a string.
+
+
+
+ Gets a string based indexer into the row. Returns the value as a CLR type.
+
+ The column index to get.
+ The CLR value for the column.
+
+
+
+ Inherits from . Creates a resultset that contains rows of data.
+
+
+
+
+ Represents a resultset that contains rows of data for relational operations.
+
+
+
+
+ Gets a boolean value indicating if this result has data.
+
+
+
+
+ Moves to next resultset.
+
+ True if there is a new resultset, false otherwise.
+
+
+
+ Represents a sql statement.
+
+
+
+
+ Initializes a new instance of the SqlStament class bassed on the session and sql statement.
+
+ The session the Sql statement belongs to.
+ The Sql statement.
+
+
+
+ Gets the current Sql statement.
+
+
+
+
+ Gets the list of parameters associated to this Sql statement.
+
+
+
+
+ Executes the current Sql statement.
+
+ A object with the resultset and execution status.
+
+
+
+ Binds the parameters values by position.
+
+ The parameter values.
+ This set with the binded parameters.
+
+
+
+ Represents a server Table or View.
+
+
+
+
+ Gets a value indicating whether the object is
+ a View (True) or a Table (False).
+
+
+
+
+ Creates a set with the columns to select. The table select
+ statement can be further modified before execution. This method is intended to select a set
+ of table rows.
+
+ The optional column names to select.
+ A object for select chain operations.
+
+
+
+ Creates a set with the fileds to insert to. The table
+ insert statement can be further modified before exeuction. This method is intended to
+ insert one or multiple rows into a table.
+
+ The list of fields to insert.
+ A object for insert chain operations.
+
+
+
+ Creates a . This method is intended to update table rows
+ values.
+
+ A object for update chain operations.
+
+
+
+ Creates a . This method is intended to delete rows from a
+ table.
+
+ A object for delete chain operations.
+
+
+
+ Returns the number of rows in the table on the server.
+
+ The number of rows.
+
+
+
+ Verifies if the table exists in the database.
+
+ true if the table exists; otherwise, false.
+
+
+
+ Represents a chaining table delete statement.
+
+
+
+
+ Sets user-defined sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ A generic object representing the implementing statement type.
+
+
+
+ Executes the delete statement.
+
+ A object containing the results of the delete execution.
+
+
+
+ Represents a chaining table insert statement.
+
+
+
+
+ Executes the insert statement.
+
+ A object containing the results of the insert statement.
+
+
+
+ Values to be inserted.
+ Multiple rows supported.
+
+ The values to be inserted.
+ This same object.
+
+
+
+ Represents a chaining table select statement.
+
+
+
+
+ Executes the select statement.
+
+ A object containing the results of the execution and data.
+
+
+
+ Locks matching rows against updates.
+
+ Optional row lock option to use.
+ This same object set with lock shared option.
+ The server version is lower than 8.0.3.
+
+
+
+ Locks matching rows so no other transaction can read or write to it.
+
+ Optional row lock option to use.
+ This same object set with the lock exclusive option.
+ The server version is lower than 8.0.3.
+
+
+
+ Sets the table aggregation.
+
+ The column list for aggregation.
+ This same object set with the specified group-by criteria.
+
+
+
+ Filters criteria for aggregated groups.
+
+ The filter criteria for aggregated groups.
+ This same object set with the specified filter criteria.
+
+
+
+ Sets user-defined sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ A generic object that represents the implementing statement type.
+
+
+
+ Represents a chaining table update statement.
+
+
+
+
+ Executes the update statement.
+
+ A object ocntaining the results of the update statement execution.
+
+
+
+ Column and value to be updated.
+
+ Column name.
+ Value to be updated.
+ This same object.
+
+
+
+ Sets user-defined sorting criteria for the operation. The strings use normal SQL syntax like
+ "order ASC" or "pages DESC, age ASC".
+
+ The order criteria.
+ A generic object that represents the implementing statement type.
+
+
+
+ Represents a schema or database.
+
+
+
+
+ Session related to current schema.
+
+
+
+
+ Returns a list of all collections in this schema.
+
+ A list representing all found collections.
+
+
+
+ Returns a list of all tables in this schema.
+
+ A list representing all found tables.
+
+
+
+ Gets a collection by name.
+
+ The name of the collection to get.
+ Ensures the collection exists in the schema.
+ A object matching the given name.
+
+
+
+ Gets a typed collection object. This is useful for using domain objects.
+
+ The name of collection to get.
+ Ensures the collection exists in the schema.
+ A generic object set with the given name.
+
+
+
+ Gets the given collection as a table.
+
+ The name of the collection.
+ A object set with the given name.
+
+
+
+ Gets a table object. Upon return the object may or may not be valid.
+
+ The name of the table object.
+ A object set with the given name.
+
+
+
+ Creates a .
+
+ The name of the collection to create.
+ If false, throws an exception if the collection exists.
+ Collection referente.
+
+
+
+ Creates a including a schema validation.
+
+ The name of the collection to create.
+ This object hold the parameters required to create the collection.
+
+ Collection referente.
+
+
+
+ Modify a collection adding or removing schema validation parameters.
+
+ The name of the collection to create.
+ This object encapsulate the Validation parameters level and schema.
+ Collection referente.
+
+
+
+ Drops the given collection.
+
+ The name of the collection to drop.
+ is null.
+
+
+
+ Determines if this schema actually exists.
+
+ True if exists, false otherwise.
+
+
+
+ Represents a single server session.
+
+
+
+
+ Returns a object that can be used to execute the given SQL.
+
+ The SQL to execute.
+ A object set with the provided SQL.
+
+
+
+ Sets the schema in the database.
+
+ The schema name to be set.
+
+
+
+ Executes a query in the database to get the current schema.
+
+ Current database object or null if no schema is selected.
+
+
+
+ Closes the current session properly after it was closed by the server.
+
+
+
+ Holder for reflection information generated from mysqlx.proto
+
+
+ File descriptor for mysqlx.proto
+
+
+ Holder for extension identifiers generated from the top level of mysqlx.proto
+
+
+
+ *
+ IDs of messages that can be sent from client to the server.
+
+ @note
+ This message is never sent on the wire. It is only used to let ``protoc``:
+ - generate constants
+ - check for uniqueness
+
+
+
+ Container for nested types declared in the ClientMessages message type.
+
+
+
+ *
+ IDs of messages that can be sent from server to client.
+
+ @note
+ This message is never sent on the wire. It is only used to let ``protoc``:
+ - generate constants
+ - check for uniqueness
+
+
+
+ Container for nested types declared in the ServerMessages message type.
+
+
+
+ NOTICE has to stay at 11 forever
+
+
+
+ Field number for the "msg" field.
+
+
+ Gets whether the "msg" field is set
+
+
+ Clears the value of the "msg" field
+
+
+ Field number for the "severity" field.
+
+
+
+ * severity of the error message
+
+
+
+ Gets whether the "severity" field is set
+
+
+ Clears the value of the "severity" field
+
+
+ Field number for the "code" field.
+
+
+
+ * error code
+
+
+
+ Gets whether the "code" field is set
+
+
+ Clears the value of the "code" field
+
+
+ Field number for the "sql_state" field.
+
+
+
+ * SQL state
+
+
+
+ Gets whether the "sql_state" field is set
+
+
+ Clears the value of the "sql_state" field
+
+
+ Field number for the "msg" field.
+
+
+
+ * human-readable error message
+
+
+
+ Gets whether the "msg" field is set
+
+
+ Clears the value of the "msg" field
+
+
+ Container for nested types declared in the Error message type.
+
+
+ Holder for reflection information generated from mysqlx_connection.proto
+
+
+ File descriptor for mysqlx_connection.proto
+
+
+
+ *
+ Capability
+
+ A tuple of a ``name`` and a @ref Mysqlx::Datatypes::Any
+
+
+
+ Field number for the "name" field.
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "value" field.
+
+
+
+ *
+ Capabilities
+
+ list of Capability
+
+
+
+ Field number for the "capabilities" field.
+
+
+
+ *
+ Get supported connection capabilities and their current state.
+
+ @returns @ref Mysqlx::Connection::Capabilities or @ref Mysqlx::Error
+
+
+
+
+ *
+ Set connection capabilities atomically.
+ Only provided values are changed; other values are left
+ unchanged. If any of the changes fails, all changes are
+ discarded.
+
+ @pre active sessions == 0
+
+ @returns @ref Mysqlx::Ok or @ref Mysqlx::Error
+
+
+
+ Field number for the "capabilities" field.
+
+
+
+ *
+ Announce to the server that the client wants to close the connection.
+
+ It discards any session state of the server.
+
+ @returns @ref Mysqlx::Ok
+
+
+
+ Field number for the "uncompressed_size" field.
+
+
+ Gets whether the "uncompressed_size" field is set
+
+
+ Clears the value of the "uncompressed_size" field
+
+
+ Field number for the "server_messages" field.
+
+
+ Gets whether the "server_messages" field is set
+
+
+ Clears the value of the "server_messages" field
+
+
+ Field number for the "client_messages" field.
+
+
+ Gets whether the "client_messages" field is set
+
+
+ Clears the value of the "client_messages" field
+
+
+ Field number for the "payload" field.
+
+
+ Gets whether the "payload" field is set
+
+
+ Clears the value of the "payload" field
+
+
+ Holder for reflection information generated from mysqlx_crud.proto
+
+
+ File descriptor for mysqlx_crud.proto
+
+
+
+ *
+ DataModel to use for filters, names, ...
+
+
+
+
+ *
+ ViewAlgorithm defines how MySQL Server processes the view
+
+
+
+
+ * MySQL chooses which algorithm to use
+
+
+
+
+ * the text of a statement that refers to the view and the view
+ definition are merged
+
+
+
+
+ * the view are retrieved into a temporary table
+
+
+
+
+ *
+ ViewSqlSecurity defines the security context in which the view is going to be
+ executed; this means that VIEW can be executed with current user permissions or
+ with permissions of the user who defined the VIEW
+
+
+
+
+ * use current user permissions
+
+
+
+
+ * use permissions of the user who defined the VIEW
+
+
+
+
+ *
+ ViewCheckOption limits the write operations done on a `VIEW`
+ (`INSERT`, `UPDATE`, `DELETE`) to rows in which the `WHERE` clause is `TRUE`
+
+
+
+
+ * the view WHERE clause is checked, but no underlying views are checked
+
+
+
+
+ * the view WHERE clause is checked, then checking recurses
+ to underlying views
+
+
+
+ Field number for the "name" field.
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "alias" field.
+
+
+ Gets whether the "alias" field is set
+
+
+ Clears the value of the "alias" field
+
+
+ Field number for the "document_path" field.
+
+
+ Field number for the "source" field.
+
+
+
+ * the expression identifying an element from the source data,
+ which can include a column identifier or any expression
+
+
+
+ Field number for the "alias" field.
+
+
+
+ * optional alias. Required for DOCUMENTs (clients may use
+ the source string as default)
+
+
+
+ Gets whether the "alias" field is set
+
+
+ Clears the value of the "alias" field
+
+
+ Field number for the "name" field.
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "schema" field.
+
+
+ Gets whether the "schema" field is set
+
+
+ Clears the value of the "schema" field
+
+
+ Field number for the "row_count" field.
+
+
+
+ * maximum rows to filter
+
+
+
+ Gets whether the "row_count" field is set
+
+
+ Clears the value of the "row_count" field
+
+
+ Field number for the "offset" field.
+
+
+
+ * maximum rows to skip before applying the row_count
+
+
+
+ Gets whether the "offset" field is set
+
+
+ Clears the value of the "offset" field
+
+
+
+ *
+ LimitExpr, in comparison to Limit, is able to specify that row_count and
+ offset are placeholders.
+ This message support expressions of following types Expr/literal/UINT,
+ Expr/PLACEHOLDER.
+
+
+
+ Field number for the "row_count" field.
+
+
+
+ * maximum rows to filter
+
+
+
+ Field number for the "offset" field.
+
+
+
+ * maximum rows to skip before applying the row_count
+
+
+
+
+ *
+ Sort order
+
+
+
+ Field number for the "expr" field.
+
+
+ Field number for the "direction" field.
+
+
+ Gets whether the "direction" field is set
+
+
+ Clears the value of the "direction" field
+
+
+ Container for nested types declared in the Order message type.
+
+
+ Field number for the "source" field.
+
+
+
+ * specification of the value to be updated
+ - if data_model is TABLE, a column name may be specified and also
+ a document path, if the column has type JSON
+ - if data_model is DOCUMENT, only document paths are allowed
+
+ @note in both cases, schema and table must be not set
+
+
+
+ Field number for the "operation" field.
+
+
+
+ * the type of operation to be performed
+
+
+
+ Gets whether the "operation" field is set
+
+
+ Clears the value of the "operation" field
+
+
+ Field number for the "value" field.
+
+
+
+ * an expression to be computed as the new value for the operation
+
+
+
+ Container for nested types declared in the UpdateOperation message type.
+
+
+
+ * only allowed for TABLE
+
+
+
+
+ * no value (removes the identified path from a object or array)
+
+
+
+
+ * sets the new value on the identified path
+
+
+
+
+ * replaces a value if the path exists
+
+
+
+
+ * source and value must be documents
+
+
+
+
+ * insert the value in the array at the index identified in the source path
+
+
+
+
+ * append the value on the array at the identified path
+
+
+
+
+ * merge JSON object value with the provided patch expression
+
+
+
+
+ *
+ Find Documents/Rows in a Collection/Table
+
+ @startuml
+ client -> server: Find
+ ... one or more Resultset ...
+ @enduml
+
+ @returns @ref Mysqlx::Resultset
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * collection in which to find
+
+
+
+ Field number for the "data_model" field.
+
+
+
+ * data model that the operations refer to
+
+
+
+ Gets whether the "data_model" field is set
+
+
+ Clears the value of the "data_model" field
+
+
+ Field number for the "projection" field.
+
+
+
+ * list of column projections that shall be returned
+
+
+
+ Field number for the "args" field.
+
+
+
+ * values for parameters used in filter expression
+
+
+
+ Field number for the "criteria" field.
+
+
+
+ * filter criteria
+
+
+
+ Field number for the "limit" field.
+
+
+
+ * numbers of rows that shall be skipped and returned
+ (user can set one of: limit, limit_expr)
+
+
+
+ Field number for the "order" field.
+
+
+
+ * sort-order in which the rows/document shall be returned in
+
+
+
+ Field number for the "grouping" field.
+
+
+
+ * column expression list for aggregation (GROUP BY)
+
+
+
+ Field number for the "grouping_criteria" field.
+
+
+
+ * filter criteria for aggregated groups
+
+
+
+ Field number for the "locking" field.
+
+
+
+ * perform row locking on matches
+
+
+
+ Gets whether the "locking" field is set
+
+
+ Clears the value of the "locking" field
+
+
+ Field number for the "locking_options" field.
+
+
+
+ * additional options how to handle locked rows
+
+
+
+ Gets whether the "locking_options" field is set
+
+
+ Clears the value of the "locking_options" field
+
+
+ Field number for the "limit_expr" field.
+
+
+
+ * numbers of rows that shall be skipped and returned
+ (user can set one of: limit, limit_expr)
+
+
+
+ Container for nested types declared in the Find message type.
+
+
+
+ * Lock matching rows against updates
+
+
+
+
+ * Lock matching rows so no other transaction can read or write to it
+
+
+
+
+ * Do not wait to acquire row lock, fail with an error
+ if a requested row is locked
+
+
+
+
+ * Do not wait to acquire a row lock,
+ remove locked rows from the result set
+
+
+
+
+ *
+ Insert documents/rows into a collection/table
+
+ @returns @ref Mysqlx::Resultset
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * collection to insert into
+
+
+
+ Field number for the "data_model" field.
+
+
+
+ * data model that the operations refer to
+
+
+
+ Gets whether the "data_model" field is set
+
+
+ Clears the value of the "data_model" field
+
+
+ Field number for the "projection" field.
+
+
+
+ * name of the columns to insert data into
+ (empty if data_model is DOCUMENT)
+
+
+
+ Field number for the "row" field.
+
+
+
+ * set of rows to insert into the collection/table (a single expression
+ with a JSON document literal or an OBJECT expression)
+
+
+
+ Field number for the "args" field.
+
+
+
+ * values for parameters used in row expressions
+
+
+
+ Field number for the "upsert" field.
+
+
+
+ * true if this should be treated as an Upsert
+ (that is, update on duplicate key)
+
+
+
+ Gets whether the "upsert" field is set
+
+
+ Clears the value of the "upsert" field
+
+
+ Container for nested types declared in the Insert message type.
+
+
+
+ * set of fields to insert as a one row
+
+
+
+ Field number for the "field" field.
+
+
+
+ *
+ Update documents/rows in a collection/table
+
+ @returns @ref Mysqlx::Resultset
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * collection to change
+
+
+
+ Field number for the "data_model" field.
+
+
+
+ * datamodel that the operations refer to
+
+
+
+ Gets whether the "data_model" field is set
+
+
+ Clears the value of the "data_model" field
+
+
+ Field number for the "criteria" field.
+
+
+
+ * filter expression to match rows that the operations will apply on
+
+
+
+ Field number for the "limit" field.
+
+
+
+ * limits the number of rows to match
+ (user can set one of: limit, limit_expr)
+
+
+
+ Field number for the "order" field.
+
+
+
+ * specifies order of matched rows
+
+
+
+ Field number for the "operation" field.
+
+
+
+ * list of operations to be applied.
+ Valid operations will depend on the data_model
+
+
+
+ Field number for the "args" field.
+
+
+
+ * values for parameters used in filter expression
+
+
+
+ Field number for the "limit_expr" field.
+
+
+
+ * limits the number of rows to match
+ (user can set one of: limit, limit_expr)
+
+
+
+
+ *
+ Delete documents/rows from a Collection/Table
+
+ @returns @ref Mysqlx::Resultset
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * collection to change
+
+
+
+ Field number for the "data_model" field.
+
+
+
+ * data model that the operations refer to
+
+
+
+ Gets whether the "data_model" field is set
+
+
+ Clears the value of the "data_model" field
+
+
+ Field number for the "criteria" field.
+
+
+
+ * filter expression to match rows that the operations will apply on
+
+
+
+ Field number for the "limit" field.
+
+
+
+ * limits the number of rows to match
+ (user can set one of: limit, limit_expr)
+
+
+
+ Field number for the "order" field.
+
+
+
+ * specifies order of matched rows
+
+
+
+ Field number for the "args" field.
+
+
+
+ * values for parameters used in filter expression
+
+
+
+ Field number for the "limit_expr" field.
+
+
+
+ * limits the number of rows to match
+ (user can set one of: limit, limit_expr)
+
+
+
+
+ *
+ CreateView create view based on indicated @ref Mysqlx::Crud::Find message
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * name of the VIEW object, which should be created
+
+
+
+ Field number for the "definer" field.
+
+
+
+ * user name of the definer, if the value isn't set then the definer
+ is current user
+
+
+
+ Gets whether the "definer" field is set
+
+
+ Clears the value of the "definer" field
+
+
+ Field number for the "algorithm" field.
+
+
+
+ * defines how MySQL Server processes the view
+
+
+
+ Gets whether the "algorithm" field is set
+
+
+ Clears the value of the "algorithm" field
+
+
+ Field number for the "security" field.
+
+
+
+ * defines the security context in which the view is going be executed
+
+
+
+ Gets whether the "security" field is set
+
+
+ Clears the value of the "security" field
+
+
+ Field number for the "check" field.
+
+
+
+ * limits the write operations done on a VIEW
+
+
+
+ Gets whether the "check" field is set
+
+
+ Clears the value of the "check" field
+
+
+ Field number for the "column" field.
+
+
+
+ * defines the list of aliases for column names specified in `stmt`
+
+
+
+ Field number for the "stmt" field.
+
+
+
+ * Mysqlx.Crud.Find message from which the SELECT statement
+ is going to be build
+
+
+
+ Field number for the "replace_existing" field.
+
+
+
+ * if true then suppress error when created view already exists;
+ just replace it
+
+
+
+ Gets whether the "replace_existing" field is set
+
+
+ Clears the value of the "replace_existing" field
+
+
+
+ *
+ ModifyView modify existing view based on indicated
+ @ref Mysqlx::Crud::Find message
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * name of the VIEW object, which should be modified
+
+
+
+ Field number for the "definer" field.
+
+
+
+ * user name of the definer,
+ if the value isn't set then the definer is current user
+
+
+
+ Gets whether the "definer" field is set
+
+
+ Clears the value of the "definer" field
+
+
+ Field number for the "algorithm" field.
+
+
+
+ * defined how MySQL Server processes the view
+
+
+
+ Gets whether the "algorithm" field is set
+
+
+ Clears the value of the "algorithm" field
+
+
+ Field number for the "security" field.
+
+
+
+ * defines the security context in which the view is going be executed
+
+
+
+ Gets whether the "security" field is set
+
+
+ Clears the value of the "security" field
+
+
+ Field number for the "check" field.
+
+
+
+ * limits the write operations done on a VIEW
+
+
+
+ Gets whether the "check" field is set
+
+
+ Clears the value of the "check" field
+
+
+ Field number for the "column" field.
+
+
+
+ * defines the list of aliases for column names specified in `stmt`
+
+
+
+ Field number for the "stmt" field.
+
+
+
+ * Mysqlx.Crud.Find message from which the SELECT statement
+ is going to be build
+
+
+
+
+ *
+ DropView removing existing view
+
+
+
+ Field number for the "collection" field.
+
+
+
+ * name of the VIEW object, which should be deleted
+
+
+
+ Field number for the "if_exists" field.
+
+
+
+ * if true then suppress error when deleted view does not exists
+
+
+
+ Gets whether the "if_exists" field is set
+
+
+ Clears the value of the "if_exists" field
+
+
+ Holder for reflection information generated from mysqlx_cursor.proto
+
+
+ File descriptor for mysqlx_cursor.proto
+
+
+
+ *
+ Open a cursor
+
+ @startuml
+ client -> server: Open
+ alt Success
+ ... none or partial Resultsets or full Resultsets ...
+ client <- server: StmtExecuteOk
+ else Failure
+ client <- server: Error
+ end alt
+ @enduml
+
+ @returns @ref Mysqlx::Ok
+
+
+
+ Field number for the "cursor_id" field.
+
+
+
+ * client-side assigned cursor ID; the ID is going to represent
+ the new cursor and assigned to it the statement
+
+
+
+ Gets whether the "cursor_id" field is set
+
+
+ Clears the value of the "cursor_id" field
+
+
+ Field number for the "stmt" field.
+
+
+
+ * statement for which the resultset is going to be iterated through by the cursor
+
+
+
+ Field number for the "fetch_rows" field.
+
+
+
+ * number of rows that should be retrieved from sequential cursor
+
+
+
+ Gets whether the "fetch_rows" field is set
+
+
+ Clears the value of the "fetch_rows" field
+
+
+ Container for nested types declared in the Open message type.
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "prepare_execute" field.
+
+
+ Container for nested types declared in the OneOfMessage message type.
+
+
+
+ *
+ Fetch next portion of data from a cursor
+
+ @startuml
+ client -> server: Fetch
+ alt Success
+ ... none or partial Resultsets or full Resultsets ...
+ client <- server: StmtExecuteOk
+ else
+ client <- server: Error
+ end
+ @enduml
+
+
+
+ Field number for the "cursor_id" field.
+
+
+
+ * client-side assigned cursor ID; must be already open
+
+
+
+ Gets whether the "cursor_id" field is set
+
+
+ Clears the value of the "cursor_id" field
+
+
+ Field number for the "fetch_rows" field.
+
+
+
+ * number of rows that should be retrieved from sequential cursor
+
+
+
+ Gets whether the "fetch_rows" field is set
+
+
+ Clears the value of the "fetch_rows" field
+
+
+
+ *
+ Close cursor
+
+ @startuml
+ client -> server: Close
+ alt Success
+ client <- server: Ok
+ else Failure
+ client <- server: Error
+ end
+ @enduml
+
+ @returns @ref Mysqlx::Ok or @ref Mysqlx::Error
+
+
+
+ Field number for the "cursor_id" field.
+
+
+
+ * client-side assigned cursor ID; must be allocated/open
+
+
+
+ Gets whether the "cursor_id" field is set
+
+
+ Clears the value of the "cursor_id" field
+
+
+ Holder for reflection information generated from mysqlx_datatypes.proto
+
+
+ File descriptor for mysqlx_datatypes.proto
+
+
+
+ a scalar
+
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "v_signed_int" field.
+
+
+ Gets whether the "v_signed_int" field is set
+
+
+ Clears the value of the "v_signed_int" field
+
+
+ Field number for the "v_unsigned_int" field.
+
+
+ Gets whether the "v_unsigned_int" field is set
+
+
+ Clears the value of the "v_unsigned_int" field
+
+
+ Field number for the "v_octets" field.
+
+
+
+ 4 is unused, was Null which doesn't have a storage anymore
+
+
+
+ Field number for the "v_double" field.
+
+
+ Gets whether the "v_double" field is set
+
+
+ Clears the value of the "v_double" field
+
+
+ Field number for the "v_float" field.
+
+
+ Gets whether the "v_float" field is set
+
+
+ Clears the value of the "v_float" field
+
+
+ Field number for the "v_bool" field.
+
+
+ Gets whether the "v_bool" field is set
+
+
+ Clears the value of the "v_bool" field
+
+
+ Field number for the "v_string" field.
+
+
+ Container for nested types declared in the Scalar message type.
+
+
+
+ * a string with a charset/collation
+
+
+
+ Field number for the "value" field.
+
+
+ Gets whether the "value" field is set
+
+
+ Clears the value of the "value" field
+
+
+ Field number for the "collation" field.
+
+
+ Gets whether the "collation" field is set
+
+
+ Clears the value of the "collation" field
+
+
+
+ * an opaque octet sequence, with an optional content_type
+ See @ref Mysqlx::Resultset::ContentType_BYTES for list of known values.
+
+
+
+ Field number for the "value" field.
+
+
+ Gets whether the "value" field is set
+
+
+ Clears the value of the "value" field
+
+
+ Field number for the "content_type" field.
+
+
+ Gets whether the "content_type" field is set
+
+
+ Clears the value of the "content_type" field
+
+
+
+ *
+ An object
+
+
+
+ Field number for the "fld" field.
+
+
+ Container for nested types declared in the Object message type.
+
+
+ Field number for the "key" field.
+
+
+ Gets whether the "key" field is set
+
+
+ Clears the value of the "key" field
+
+
+ Field number for the "value" field.
+
+
+
+ *
+ An Array
+
+
+
+ Field number for the "value" field.
+
+
+
+ *
+ A helper to allow all field types
+
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "scalar" field.
+
+
+ Field number for the "obj" field.
+
+
+ Field number for the "array" field.
+
+
+ Container for nested types declared in the Any message type.
+
+
+ Holder for reflection information generated from mysqlx_expect.proto
+
+
+ File descriptor for mysqlx_expect.proto
+
+
+
+ *
+ Open an Expect block and set/unset the conditions that have to
+ be fulfilled.
+
+ If any of the conditions fail, all enclosed messages will fail
+ with a ``Mysqlx::Error`` message.
+
+ @returns @ref Mysqlx::Ok on success, @ref Mysqlx::Error on error
+
+
+
+ Field number for the "op" field.
+
+
+ Gets whether the "op" field is set
+
+
+ Clears the value of the "op" field
+
+
+ Field number for the "cond" field.
+
+
+ Container for nested types declared in the Open message type.
+
+
+
+ * copy the operations from the parent Expect-block
+
+
+
+
+ * start with a empty set of operations
+
+
+
+ Field number for the "condition_key" field.
+
+
+ Gets whether the "condition_key" field is set
+
+
+ Clears the value of the "condition_key" field
+
+
+ Field number for the "condition_value" field.
+
+
+ Gets whether the "condition_value" field is set
+
+
+ Clears the value of the "condition_value" field
+
+
+ Field number for the "op" field.
+
+
+ Gets whether the "op" field is set
+
+
+ Clears the value of the "op" field
+
+
+ Container for nested types declared in the Condition message type.
+
+
+
+ * Change error propagation behaviour
+
+
+
+
+ * Check if X Protocol field exists
+
+
+
+
+ * Check if X Protocol supports document _id generation
+
+
+
+
+ * set the condition; set, if not set; overwrite, if set
+
+
+
+
+ * unset the condition
+
+
+
+
+ *
+ Close a Expect block.
+
+ Closing a Expect block restores the state of the previous Expect
+ block for the following messages.
+
+ @returns @ref Mysqlx::Ok on success, @ref Mysqlx::Error on error
+
+
+
+ Holder for reflection information generated from mysqlx_expr.proto
+
+
+ File descriptor for mysqlx_expr.proto
+
+
+
+ *
+ The "root" of the expression tree.
+
+ If expression type is PLACEHOLDER, then it refers to the value
+ of a parameter specified when executing a statement (see args
+ field of StmtExecute command). Field position (which must be
+ present for such an expression) gives 0-based position of the
+ parameter in the parameter list.
+
+ @par production list
+ @code{unparsed}
+ expr: operator |
+ : identifier |
+ : function_call |
+ : variable |
+ : literal |
+ : object |
+ : array |
+ : placeholder
+ @endcode
+
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "identifier" field.
+
+
+ Field number for the "variable" field.
+
+
+ Gets whether the "variable" field is set
+
+
+ Clears the value of the "variable" field
+
+
+ Field number for the "literal" field.
+
+
+ Field number for the "function_call" field.
+
+
+ Field number for the "operator" field.
+
+
+ Field number for the "position" field.
+
+
+ Gets whether the "position" field is set
+
+
+ Clears the value of the "position" field
+
+
+ Field number for the "object" field.
+
+
+ Field number for the "array" field.
+
+
+ Container for nested types declared in the Expr message type.
+
+
+
+ *
+ Identifier: name, schame.name
+
+ @par production list
+ @code{unparsed}
+ identifier: string "." string |
+ : string
+ @endcode
+
+
+
+ Field number for the "name" field.
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "schema_name" field.
+
+
+ Gets whether the "schema_name" field is set
+
+
+ Clears the value of the "schema_name" field
+
+
+
+ *
+ Document path item
+
+ @par production list
+ @code{unparsed}
+ document_path: path_item | path_item document_path
+ path_item : member | array_index | "**"
+ member : "." string | "." "*"
+ array_index : "[" number "]" | "[" "*" "]"
+ @endcode
+
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "value" field.
+
+
+ Gets whether the "value" field is set
+
+
+ Clears the value of the "value" field
+
+
+ Field number for the "index" field.
+
+
+
+ * used in case of ARRY_INDEX
+
+
+
+ Gets whether the "index" field is set
+
+
+ Clears the value of the "index" field
+
+
+ Container for nested types declared in the DocumentPathItem message type.
+
+
+
+ * .member
+
+
+
+
+ * \.*
+
+
+
+
+ * [index]
+
+
+
+
+ * [*]
+
+
+
+
+ * **
+
+
+
+
+ Field number for the "document_path" field.
+
+
+
+ * document path
+
+
+
+ Field number for the "name" field.
+
+
+
+ * name of column
+
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "table_name" field.
+
+
+
+ * name of table
+
+
+
+ Gets whether the "table_name" field is set
+
+
+ Clears the value of the "table_name" field
+
+
+ Field number for the "schema_name" field.
+
+
+
+ * name of schema
+
+
+
+ Gets whether the "schema_name" field is set
+
+
+ Clears the value of the "schema_name" field
+
+
+
+ *
+ Function call: ``func(a, b, "1", 3)``
+
+ @par production list
+ @code{unparsed}
+ function_call: `identifier` "(" [ `expr` ["," `expr` ]* ] ")"
+ @endcode
+
+
+
+ Field number for the "name" field.
+
+
+
+ * identifier of function; at least name of it
+
+
+
+ Field number for the "param" field.
+
+
+
+ * list of parameters
+
+
+
+ Field number for the "name" field.
+
+
+
+ * name of operator
+
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "param" field.
+
+
+
+ * list of parameters
+
+
+
+
+ *
+ An object (with expression values)
+
+
+
+ Field number for the "fld" field.
+
+
+
+ * list of fields
+
+
+
+ Container for nested types declared in the Object message type.
+
+
+ Field number for the "key" field.
+
+
+
+ * identifier of field
+
+
+
+ Gets whether the "key" field is set
+
+
+ Clears the value of the "key" field
+
+
+ Field number for the "value" field.
+
+
+
+ * value of field
+
+
+
+
+ *
+ An array of expressions
+
+
+
+ Field number for the "value" field.
+
+
+
+ * list of values
+
+
+
+ Holder for reflection information generated from mysqlx_notice.proto
+
+
+ File descriptor for mysqlx_notice.proto
+
+
+
+ *
+ Common frame for all notices
+
+ | ``.type`` | Value |
+ |---------------------------------------------------|------ |
+ | @ref Mysqlx::Notice::Warning | 1 |
+ | @ref Mysqlx::Notice::SessionVariableChanged | 2 |
+ | @ref Mysqlx::Notice::SessionStateChanged | 3 |
+ | @ref Mysqlx::Notice::GroupReplicationStateChanged | 4 |
+ | @ref Mysqlx::Notice::ServerHello | 5 |
+
+
+
+ Field number for the "type" field.
+
+
+
+ * the type of the payload
+
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "scope" field.
+
+
+
+ * global or local notification
+
+
+
+ Gets whether the "scope" field is set
+
+
+ Clears the value of the "scope" field
+
+
+ Field number for the "payload" field.
+
+
+
+ * the payload of the notification
+
+
+
+ Gets whether the "payload" field is set
+
+
+ Clears the value of the "payload" field
+
+
+ Container for nested types declared in the Frame message type.
+
+
+
+ * scope of notice
+
+
+
+
+ * type of notice payload
+
+
+
+
+ *
+ Server-side warnings and notes
+
+ @par ``.scope`` == ``local``
+ ``.level``, ``.code`` and ``.msg`` map the content of:
+ @code{sql}
+ SHOW WARNINGS
+ @endcode
+
+ @par ``.scope`` == ``global``
+ (undefined) Will be used for global, unstructured messages like:
+ - server is shutting down
+ - a node disconnected from group
+ - schema or table dropped
+
+ | @ref Mysqlx::Notice::Frame Field | Value |
+ |-----------------------------------|-------------------------|
+ | ``.type`` | 1 |
+ | ``.scope`` | ``local`` or ``global`` |
+
+
+
+ Field number for the "level" field.
+
+
+
+ * Note or Warning
+
+
+
+ Gets whether the "level" field is set
+
+
+ Clears the value of the "level" field
+
+
+ Field number for the "code" field.
+
+
+
+ * warning code
+
+
+
+ Gets whether the "code" field is set
+
+
+ Clears the value of the "code" field
+
+
+ Field number for the "msg" field.
+
+
+
+ * warning message
+
+
+
+ Gets whether the "msg" field is set
+
+
+ Clears the value of the "msg" field
+
+
+ Container for nested types declared in the Warning message type.
+
+
+
+ *
+ Notify clients about changes to the current session variables.
+
+ Every change to a variable that is accessible through:
+
+ @code{sql}
+ SHOW SESSION VARIABLES
+ @endcode
+
+ | @ref Mysqlx::Notice::Frame Field | Value |
+ |-----------------------------------|----------|
+ | ``.type`` | 2 |
+ | ``.scope`` | ``local``|
+
+
+
+ Field number for the "param" field.
+
+
+
+ * name of the variable
+
+
+
+ Gets whether the "param" field is set
+
+
+ Clears the value of the "param" field
+
+
+ Field number for the "value" field.
+
+
+
+ * the changed value of param
+
+
+
+ Field number for the "param" field.
+
+
+
+ * parameter key
+
+
+
+ Gets whether the "param" field is set
+
+
+ Clears the value of the "param" field
+
+
+ Field number for the "value" field.
+
+
+
+ * updated value
+
+
+
+ Container for nested types declared in the SessionStateChanged message type.
+
+
+
+ .. more to be added
+
+
+
+
+ *
+ Notify clients about group replication state changes
+
+ | @ref Mysqlx::Notice::Frame Field | Value |
+ |-----------------------------------|------------|
+ |``.type`` | 4 |
+ |``.scope`` | ``global`` |
+
+
+
+ Field number for the "type" field.
+
+
+
+ * type of group replication event
+
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "view_id" field.
+
+
+
+ * view identifier
+
+
+
+ Gets whether the "view_id" field is set
+
+
+ Clears the value of the "view_id" field
+
+
+ Container for nested types declared in the GroupReplicationStateChanged message type.
+
+
+
+ *
+ Notify clients about connection to X Protocol server
+
+ | @ref Mysqlx::Notice::Frame Field | Value |
+ |-----------------------------------|------------|
+ |``.type`` | 5 |
+ |``.scope`` | ``global`` |
+
+
+
+ Holder for reflection information generated from mysqlx_prepare.proto
+
+
+ File descriptor for mysqlx_prepare.proto
+
+
+
+ *
+ Prepare a new statement
+
+ @startuml
+ client -> server: Prepare
+ alt Success
+ client <- server: Ok
+ else Failure
+ client <- server: Error
+ end
+ @enduml
+
+ @returns @ref Mysqlx::Ok or @ref Mysqlx::Error
+
+
+
+ Field number for the "stmt_id" field.
+
+
+
+ * client-side assigned statement ID, which is going to identify
+ the result of preparation
+
+
+
+ Gets whether the "stmt_id" field is set
+
+
+ Clears the value of the "stmt_id" field
+
+
+ Field number for the "stmt" field.
+
+
+
+ * defines one of following messages to be prepared:
+ Crud::Find, Crud::Insert, Crud::Delete, Crud::Upsert, Sql::StmtExecute
+
+
+
+ Container for nested types declared in the Prepare message type.
+
+
+ Field number for the "type" field.
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "find" field.
+
+
+ Field number for the "insert" field.
+
+
+ Field number for the "update" field.
+
+
+ Field number for the "delete" field.
+
+
+ Field number for the "stmt_execute" field.
+
+
+ Container for nested types declared in the OneOfMessage message type.
+
+
+
+ Determine which of optional fields was set by the client
+ (Workaround for missing "oneof" keyword in pb2.5)
+
+
+
+
+ *
+ Execute already-prepared statement
+
+ @startuml
+
+ client -> server: Execute
+ alt Success
+ ... Resultsets...
+ client <- server: StmtExecuteOk
+ else Failure
+ client <- server: Error
+ end
+ @enduml
+ @returns @ref Mysqlx::Ok
+
+
+
+ Field number for the "stmt_id" field.
+
+
+
+ * client-side assigned statement ID, must be already prepared
+
+
+
+ Gets whether the "stmt_id" field is set
+
+
+ Clears the value of the "stmt_id" field
+
+
+ Field number for the "args" field.
+
+
+
+ * Arguments to bind to the prepared statement
+
+
+
+ Field number for the "compact_metadata" field.
+
+
+
+ * send only type information for
+ @ref Mysqlx::Resultset::ColumnMetaData, skipping names and others
+
+
+
+ Gets whether the "compact_metadata" field is set
+
+
+ Clears the value of the "compact_metadata" field
+
+
+
+ *
+ Deallocate already-prepared statement
+
+ @startuml
+ client -> server: Deallocate
+ alt Success
+ client <- server: Ok
+ else Failure
+ client <- server: Error
+ end
+ @enduml
+
+ @returns @ref Mysqlx::Ok or @ref Mysqlx::Error
+
+
+
+ Field number for the "stmt_id" field.
+
+
+
+ * client-side assigned statement ID, must be already prepared
+
+
+
+ Gets whether the "stmt_id" field is set
+
+
+ Clears the value of the "stmt_id" field
+
+
+ Holder for reflection information generated from mysqlx_resultset.proto
+
+
+ File descriptor for mysqlx_resultset.proto
+
+
+
+ *
+ A hint about the higher-level encoding of a BYTES field
+
+ |type | value | description |
+ |------| -------|-------------------------|
+ |BYTES | 0x0001 | GEOMETRY (WKB encoding) |
+ |BYTES | 0x0002 | JSON (text encoding) |
+ |BYTES | 0x0003 | XML (text encoding) |
+
+ @note
+ this list isn't comprehensive. As a guideline: the field's value is expected
+ to pass a validator check on client and server if this field is set.
+ If the server adds more internal datatypes that rely on BLOB storage
+ like image manipulation, seeking into complex types in BLOBs, ... more
+ types will be added.
+
+
+
+
+ *
+ A hint about the higher-level encoding of a DATETIME field
+
+ |type |value |description |
+ |---------|-------|-------------------------------------------|
+ |DATE |0x0001 |DATETIME contains only date part |
+ |DATETIME |0x0002 |DATETIME contains both date and time parts |
+
+
+
+
+ *
+ Resultsets are finished, OUT paramset is next:
+
+
+
+
+ *
+ Resultset and out-params are finished, but more resultsets available
+
+
+
+
+ *
+ All resultsets are finished
+
+
+
+
+ *
+ Cursor is opened; still, the execution of PrepFetch or PrepExecute ended
+
+
+
+
+ *
+ Meta data of a column
+
+ @note
+ The encoding used for the different ``bytes`` fields in the
+ meta data is externally controlled. See also:
+ https://dev.mysql.com/doc/refman/5.0/en/charset-connection.html
+
+ @par
+ @note
+ The server may not set the ``original_{table|name}`` fields
+ if they are equal to the plain ``{table|name}`` field.
+
+ @par
+ @note
+ A client has to reconstruct it like:
+ @code{py}
+ if .original_name is empty and .name is not empty:
+ .original_name = .name
+
+ if .original_table is empty and .table is not empty:
+ .original_table = .table
+ @endcode
+
+ @par
+ @note
+ ``Compact metadata format`` can be requested by the client.
+ In that case, only ``.type`` is set and all other fields are empty.
+
+ Expected data type of Mysqlx.Resultset.Row per SQL Type for
+ non-NULL values:
+
+ | SQL Type | .type | .length | .frac\_dig | .flags | .charset |
+ |-------------------|-----------|---------|------------|--------|----------|
+ | TINY | SINT | x | | | |
+ | TINY UNSIGNED | UINT | x | | x | |
+ | SHORT | SINT | x | | | |
+ | SHORT UNSIGNED | UINT | x | | x | |
+ | INT24 | SINT | x | | | |
+ | INT24 UNSIGNED | UINT | x | | x | |
+ | INT | SINT | x | | | |
+ | INT UNSIGNED | UINT | x | | x | |
+ | LONGLONG | SINT | x | | | |
+ | LONGLONG UNSIGNED | UINT | x | | x | |
+ | DOUBLE | DOUBLE | x | x | x | |
+ | FLOAT | FLOAT | x | x | x | |
+ | DECIMAL | DECIMAL | x | x | x | |
+ | VARCHAR,CHAR,... | BYTES | x | | x | x |
+ | GEOMETRY | BYTES | | | | |
+ | TIME | TIME | x | | | |
+ | DATE | DATETIME | x | | | |
+ | DATETIME | DATETIME | x | | | |
+ | YEAR | UINT | x | | x | |
+ | TIMESTAMP | DATETIME | x | | | |
+ | SET | SET | | | | x |
+ | ENUM | ENUM | | | | x |
+ | NULL | BYTES | | | | |
+ | BIT | BIT | x | | | |
+
+ @note
+ The SQL "NULL" value is sent as an empty field value in
+ @ref Mysqlx::Resultset::Row.
+
+ @par Tip
+ The protobuf encoding of primitive data types is described in
+ https://developers.google.com/protocol-buffers/docs/encoding
+
+ + SINT
+
+ - ``.length`` @n
+ Maximum number of displayable decimal digits (including
+ minus sign) of the type.
+ @note
+ The valid range is 0-255, but usually you'll see 1-20.
+
+ | SQL Type | Maximum Digits per Type |
+ |------------------|-------------------------|
+ | TINY SIGNED | 4 |
+ | SHORT SIGNED | 6 |
+ | INT24 SIGNED | 8 |
+ | INT SIGNED | 11 |
+ | LONGLONG SIGNED | 20 |
+
+ @par Tip
+ Definition of ``M`` are in
+ https://dev.mysql.com/doc/refman/5.5/en/numeric-type-overview.html.
+
+ - ``value``@n
+ Variable length encoded signed 64 integer.
+
+ + UINT
+
+ - ``.flags & 1`` (zerofill) @n
+ The client has to left pad with 0's up to .length.
+
+ - ``.length`` @n
+ Maximum number of displayable decimal digits of the
+ type.
+ @note
+ The valid range is 0-255, but usually you'll see
+ 1-20.
+
+ | SQL Type | max digits per type |
+ |----------------------|---------------------|
+ | TINY UNSIGNED | 3 |
+ | SHORT UNSIGNED | 5 |
+ | INT24 UNSIGNED | 8 |
+ | INT UNSIGNED | 10 |
+ | LONGLONG UNSIGNED | 20 |
+
+ @par Tip
+ Definition of ``M`` are in
+ https://dev.mysql.com/doc/refman/5.5/en/numeric-type-overview.html.
+
+ - ``value`` @n
+ Variable length encoded unsigned 64 integer.
+
+ + BIT
+
+ - ``.length`` @n
+ Maximum number of displayable binary digits.
+ @note
+ The valid range for M of the ``BIT`` type is 1 - 64.
+
+ @par Tip
+ https://dev.mysql.com/doc/refman/5.5/en/numeric-type-overview.html
+
+ - ``value`` @n
+ Variable length encoded unsigned 64 integer.
+
+ + DOUBLE
+
+ - ``.length`` @n
+ Maximum number of displayable decimal digits (including
+ the decimal point and ``.fractional_digits``).
+
+ - ``.fractional_digits`` @n
+ Maximum number of displayable decimal digits following
+ the decimal point.
+
+ - ``value``@n
+ Encoded as protobuf's 'double'.
+
+ + FLOAT
+
+ - ``.length``@n
+ Maximum number of displayable decimal digits (including
+ the decimal point and ``.fractional_digits``).
+
+ - ``.fractional_digits``@n
+ Maximum number of displayable decimal digits following
+ the decimal point.
+
+ - ``value``@n
+ Encoded as protobuf's 'float'.
+
+ + BYTES, ENUM
+ @note
+ BYTES is used for all opaque byte strings that may have a charset:
+ - TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB
+ - TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT
+ - VARCHAR, VARBINARY
+ - CHAR, BINARY
+ - ENUM
+
+ - ``.length``@n
+ Maximum length of characters of the underlying type.
+
+ - ``.flags & 1`` (rightpad) @n
+ If the length of the field is less than ``.length``, the
+ receiver is supposed to add padding characters to the
+ right end of the string. If the ``.charset`` is
+ "binary", the padding character is ``0x00``, otherwise
+ it is a space character as defined by that character
+ set.
+ | SQL Type | .length | .charset | .flags |
+ |---------------|----------|-----------|----------|
+ | TINYBLOB | 256 | binary | |
+ | BLOB | 65535 | binary | |
+ | VARCHAR(32) | 32 | utf8 | |
+ | VARBINARY(32) | 32 | utf8\_bin | |
+ | BINARY(32) | 32 | binary | rightpad |
+ | CHAR(32) | 32 | utf8 | rightpad |
+
+ - ``value``
+ Sequence of bytes with added one extra ``0x00`` byte at
+ the end. To obtain the original string, the extra
+ ``0x00`` should be removed. The length of the string can
+ be acquired with protobuf's field ``length()`` method:
+
+ ``length of sequence-of-bytes = length-of-field - 1``
+ @note
+ The extra byte allows to distinguish between a NULL
+ and empty byte sequence.
+
+ + TIME
+
+ A time value.
+
+ - ``value``@n
+ The following bytes sequence:
+
+ ``negate [ hour [ minutes [ seconds [ useconds ]]]]``
+
+ - negate - one byte, should be one of: 0x00 for "+",
+ 0x01 for "-"
+
+ - hour - optional variable length encoded unsigned64
+ value for the hour
+
+ - minutes - optional variable length encoded unsigned64
+ value for the minutes
+
+ - seconds - optional variable length encoded unsigned64
+ value for the seconds
+
+ - useconds - optional variable length encoded
+ unsigned64 value for the microseconds
+
+ @par Tip
+ The protobuf encoding in
+ https://developers.google.com/protocol-buffers/docs/encoding.
+
+ @note
+ Hour, minutes, seconds, and useconds are optional if
+ all the values to the right are 0.
+
+ Example: ``0x00 -> +00:00:00.000000``
+
+ + DATETIME
+
+ A date or date and time value.
+
+ - ``value`` @n
+ A sequence of variants, arranged as follows:
+
+ ``| year | month | day | [ | hour | [ | minutes | [ | seconds | [ | useconds | ]]]]``
+
+ - year - variable length encoded unsigned64 value for
+ the year
+
+ - month - variable length encoded unsigned64 value for
+ the month
+
+ - day - variable length encoded unsigned64 value for
+ the day
+
+ - hour - optional variable length encoded unsigned64
+ value for the hour
+
+ - minutes - optional variable length encoded unsigned64
+ value for the minutes
+
+ - seconds - optional variable length encoded unsigned64
+ value for the seconds
+
+ - useconds - optional variable length encoded
+ unsigned64 value for the microseconds
+ @note
+ Hour, minutes, seconds, useconds are optional if all
+ the values to the right are 0.
+
+ - ``.flags``@n
+ | Name | Position |
+ |---------------|----------|
+ | is\_timestamp | 1 |
+
+ + DECIMAL
+
+ An arbitrary length number. The number is encoded as a
+ single byte indicating the position of the decimal point
+ followed by the Packed BCD encoded number. Packed BCD is
+ used to simplify conversion to and from strings and other
+ native arbitrary precision math data types. See also: packed
+ BCD in https://en.wikipedia.org/wiki/Binary-coded_decimal
+
+ - ``.length``
+ Maximum number of displayable decimal digits
+ (*excluding* the decimal point and sign, but including
+ ``.fractional_digits``).
+ @note
+ Should be in the range of 1 - 65.
+
+ - ``.fractional_digits``
+ The decimal digits to display out of length.
+ @note
+ Should be in the range of 0 - 30.
+
+ ``value``
+ The following bytes sequence:
+
+ ``scale | BCD+ sign [0x00]?``
+
+ - scale - 8bit scale value (number of decimal digit after the '.')
+
+ - BCD - BCD encoded digits (4 bits for each digit)
+
+ - sign - sign encoded on 4 bits (0xc = "+", 0xd = "-")
+
+ - 0x0 - last 4bits if length(digits) % 2 == 0
+
+ Example: ``x04 0x12 0x34 0x01
+ 0xd0 -> -12.3401``
+
+ + SET
+
+ A list of strings representing a SET of values.
+
+ - ``value``@n
+ A sequence of 0 or more of protobuf's bytes (length
+ prepended octets) or one of the special sequences with a
+ predefined meaning listed below.
+
+ Example (length of the bytes array shown in brackets):
+ - ``[0]`` - the NULL value
+
+ - ``[1] 0x00`` - a set containing a blank string ''
+
+ - ``[1] 0x01`` - this would be an invalid value,
+ but is to be treated as the empty set
+
+ - ``[2] 0x01 0x00`` - a set with a single item, which is the '0'
+ character
+
+ - ``[8] 0x03 F O O 0x03 B A R`` - a set with 2 items: FOO,BAR
+
+
+
+ Field number for the "type" field.
+
+
+
+ * datatype of the field in a row
+
+
+
+ Gets whether the "type" field is set
+
+
+ Clears the value of the "type" field
+
+
+ Field number for the "name" field.
+
+
+
+ * name of the column
+
+
+
+ Gets whether the "name" field is set
+
+
+ Clears the value of the "name" field
+
+
+ Field number for the "original_name" field.
+
+
+
+ * name of the column before an alias was applied
+
+
+
+ Gets whether the "original_name" field is set
+
+
+ Clears the value of the "original_name" field
+
+
+ Field number for the "table" field.
+
+
+
+ * name of the table the column originates from
+
+
+
+ Gets whether the "table" field is set
+
+
+ Clears the value of the "table" field
+
+
+ Field number for the "original_table" field.
+
+
+
+ * name of the table the column originates from before an alias was applied
+
+
+
+ Gets whether the "original_table" field is set
+
+
+ Clears the value of the "original_table" field
+
+
+ Field number for the "schema" field.
+
+
+
+ * schema the column originates from
+
+
+
+ Gets whether the "schema" field is set
+
+
+ Clears the value of the "schema" field
+
+
+ Field number for the "catalog" field.
+
+
+
+ * catalog the schema originates from
+ @note
+ As there is currently no support for catalogs in MySQL,
+ don't expect this field to be set. In the MySQL C/S
+ protocol the field had the value ``def`` all the time
+
+
+
+ Gets whether the "catalog" field is set
+
+
+ Clears the value of the "catalog" field
+
+
+ Field number for the "collation" field.
+
+
+ Gets whether the "collation" field is set
+
+
+ Clears the value of the "collation" field
+
+
+ Field number for the "fractional_digits" field.
+
+
+
+ * displayed factional decimal digits for floating point and
+ fixed point numbers
+
+
+
+ Gets whether the "fractional_digits" field is set
+
+
+ Clears the value of the "fractional_digits" field
+
+
+ Field number for the "length" field.
+
+
+
+ * maximum count of displayable characters of .type
+
+
+
+ Gets whether the "length" field is set
+
+
+ Clears the value of the "length" field
+
+
+ Field number for the "flags" field.
+
+
+
+ * ``.type`` specific flags
+ | Type | Value | Description |
+ |---------|--------|--------------|
+ | UINT | 0x0001 | zerofill |
+ | DOUBLE | 0x0001 | unsigned |
+ | FLOAT | 0x0001 | unsigned |
+ | DECIMAL | 0x0001 | unsigned |
+ | BYTES | 0x0001 | rightpad |
+
+ | Value | Description |
+ |--------|-----------------|
+ | 0x0010 | NOT\_NULL |
+ | 0x0020 | PRIMARY\_KEY |
+ | 0x0040 | UNIQUE\_KEY |
+ | 0x0080 | MULTIPLE\_KEY |
+ | 0x0100 | AUTO\_INCREMENT |
+
+ default: 0
+
+
+
+ Gets whether the "flags" field is set
+
+
+ Clears the value of the "flags" field
+
+
+ Field number for the "content_type" field.
+
+
+
+ * a hint about the higher-level encoding of a BYTES field
+ | Type | Value | Description |
+ |--------|--------|-------------------------|
+ | BYTES | 0x0001 | GEOMETRY (WKB encoding) |
+ | BYTES | 0x0002 | JSON (text encoding) |
+ | BYTES | 0x0003 | XML (text encoding) |
+ @note
+ This list isn't comprehensive. As a guideline: the field's
+ value is expected to pass a validator check on client
+ and server if this field is set. If the server adds more
+ internal data types that rely on BLOB storage like image
+ manipulation, seeking into complex types in BLOBs, and
+ more types will be added
+
+
+
+ Gets whether the "content_type" field is set
+
+
+ Clears the value of the "content_type" field
+
+
+ Container for nested types declared in the ColumnMetaData message type.
+
+
+
+ *
+ Row in a Resultset.
+
+ A row is represented as a list of fields encoded as byte blobs.
+ Value of each field is encoded as sequence of bytes using
+ encoding appropriate for the type of the value given by
+ ``ColumnMetadata``, as specified in the @ref Mysqlx::Resultset::ColumnMetaData
+ description.
+
+
+
+ Field number for the "field" field.
+
+
+ Holder for reflection information generated from mysqlx_session.proto
+
+
+ File descriptor for mysqlx_session.proto
+
+
+
+ *
+ The initial message send from the client to the server to start
+ the authentication process.
+
+ @returns @ref Mysqlx::Session::AuthenticateContinue
+
+
+
+ Field number for the "mech_name" field.
+
+
+
+ * authentication mechanism name
+
+
+
+ Gets whether the "mech_name" field is set
+
+
+ Clears the value of the "mech_name" field
+
+
+ Field number for the "auth_data" field.
+
+
+
+ * authentication data
+
+
+
+ Gets whether the "auth_data" field is set
+
+
+ Clears the value of the "auth_data" field
+
+
+ Field number for the "initial_response" field.
+
+
+
+ * initial response
+
+
+
+ Gets whether the "initial_response" field is set
+
+
+ Clears the value of the "initial_response" field
+
+
+
+ *
+ Send by client or server after an @ref Mysqlx::Session::AuthenticateStart
+ to exchange more authentication data.
+
+ @returns Mysqlx::Session::AuthenticateContinue
+
+
+
+ Field number for the "auth_data" field.
+
+
+
+ * authentication data
+
+
+
+ Gets whether the "auth_data" field is set
+
+
+ Clears the value of the "auth_data" field
+
+
+
+ *
+ Sent by the server after successful authentication.
+
+
+
+ Field number for the "auth_data" field.
+
+
+
+ * authentication data
+
+
+
+ Gets whether the "auth_data" field is set
+
+
+ Clears the value of the "auth_data" field
+
+
+
+ *
+ Reset the current session.
+
+ @returns @ref Mysqlx::Ok
+
+
+
+ Field number for the "keep_open" field.
+
+
+
+ * if is true the session will be reset, but stays authenticated; otherwise,
+ the session will be closed and needs to be authenticated again
+
+
+
+ Gets whether the "keep_open" field is set
+
+
+ Clears the value of the "keep_open" field
+
+
+
+ *
+ Close the current session.
+
+ @returns @ref Mysqlx::Ok
+
+
+
+ Holder for reflection information generated from mysqlx_sql.proto
+
+
+ File descriptor for mysqlx_sql.proto
+
+
+
+
+ Execute a statement in the given namespace.
+
+ @startuml "Execute Statements"
+ client -> server: StmtExecute
+ ... zero or more Resultsets ...
+ server --> client: StmtExecuteOk
+ @enduml
+
+ @notice This message may generate a notice containing WARNINGs generated by
+ its execution. This message may generate a notice containing INFO messages
+ generated by its execution.
+
+ @returns zero or more @ref Mysqlx::Resultset followed by @ref Mysqlx::Sql::StmtExecuteOk
+
+
+
+ Field number for the "namespace" field.
+
+
+
+ * namespace of the statement to be executed
+
+
+
+ Gets whether the "namespace" field is set
+
+
+ Clears the value of the "namespace" field
+
+
+ Field number for the "stmt" field.
+
+
+
+ * statement that shall be executed
+
+
+
+ Gets whether the "stmt" field is set
+
+
+ Clears the value of the "stmt" field
+
+
+ Field number for the "args" field.
+
+
+
+ * values for wildcard replacements
+
+
+
+ Field number for the "compact_metadata" field.
+
+
+
+ * send only type information for @ref Mysqlx::Resultset::ColumnMetaData,
+ skipping names and others
+
+
+
+ Gets whether the "compact_metadata" field is set
+
+
+ Clears the value of the "compact_metadata" field
+
+
+
+ *
+ Statement executed successfully
+
+
+
+
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Bcl.AsyncInterfaces.dll b/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..abe9406
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Web.Infrastructure.dll b/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Web.Infrastructure.dll
new file mode 100644
index 0000000..85f1138
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/Microsoft.Web.Infrastructure.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Data.dll b/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Data.dll
new file mode 100644
index 0000000..66177cc
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Data.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Web.dll b/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Web.dll
new file mode 100644
index 0000000..02b79fe
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/MySql.Web.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Buffers.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Buffers.dll
new file mode 100644
index 0000000..f2d83c5
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Buffers.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Configuration.ConfigurationManager.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Configuration.ConfigurationManager.dll
new file mode 100644
index 0000000..58530a4
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Configuration.ConfigurationManager.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Diagnostics.DiagnosticSource.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Diagnostics.DiagnosticSource.dll
new file mode 100644
index 0000000..1786b54
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Diagnostics.DiagnosticSource.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.IO.Pipelines.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.IO.Pipelines.dll
new file mode 100644
index 0000000..c534b2c
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.IO.Pipelines.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Memory.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Memory.dll
new file mode 100644
index 0000000..4617199
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Memory.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Numerics.Vectors.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Numerics.Vectors.dll
new file mode 100644
index 0000000..0865972
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Numerics.Vectors.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Runtime.CompilerServices.Unsafe.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..c5ba4e4
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Threading.Tasks.Extensions.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..eeec928
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Threading.Tasks.Extensions.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Helpers.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Helpers.dll
new file mode 100644
index 0000000..0da21c0
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Helpers.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Razor.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Razor.dll
new file mode 100644
index 0000000..7fa1f69
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.Razor.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Deployment.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Deployment.dll
new file mode 100644
index 0000000..1242f74
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Deployment.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Razor.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Razor.dll
new file mode 100644
index 0000000..ab12ee8
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.Razor.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.dll b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.dll
new file mode 100644
index 0000000..2468ea6
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/System.Web.WebPages.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.Data.dll b/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.Data.dll
new file mode 100644
index 0000000..ee3c168
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.Data.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.WebData.dll b/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.WebData.dll
new file mode 100644
index 0000000..2a83350
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/WebMatrix.WebData.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/ZstdSharp.dll b/FormCompareTools/bin/8.3.0/MySql.Web/ZstdSharp.dll
new file mode 100644
index 0000000..931b84a
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/ZstdSharp.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/comerr64.dll b/FormCompareTools/bin/8.3.0/MySql.Web/comerr64.dll
new file mode 100644
index 0000000..0a48cb5
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/comerr64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/gssapi64.dll b/FormCompareTools/bin/8.3.0/MySql.Web/gssapi64.dll
new file mode 100644
index 0000000..1628e38
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/gssapi64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/k5sprt64.dll b/FormCompareTools/bin/8.3.0/MySql.Web/k5sprt64.dll
new file mode 100644
index 0000000..9237ce9
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/k5sprt64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/krb5_64.dll b/FormCompareTools/bin/8.3.0/MySql.Web/krb5_64.dll
new file mode 100644
index 0000000..582f680
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/krb5_64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/MySql.Web/krbcc64.dll b/FormCompareTools/bin/8.3.0/MySql.Web/krbcc64.dll
new file mode 100644
index 0000000..ba5a519
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/MySql.Web/krbcc64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/SmsSender.exe.config b/FormCompareTools/bin/8.3.0/SmsSender.exe.config
new file mode 100644
index 0000000..b319077
--- /dev/null
+++ b/FormCompareTools/bin/8.3.0/SmsSender.exe.config
@@ -0,0 +1,356 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/FormCompareTools/bin/8.3.0/System.Buffers.dll b/FormCompareTools/bin/8.3.0/System.Buffers.dll
new file mode 100644
index 0000000..f2d83c5
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/System.Buffers.dll differ
diff --git a/FormCompareTools/bin/8.3.0/System.Runtime.CompilerServices.Unsafe.dll b/FormCompareTools/bin/8.3.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..c5ba4e4
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/FormCompareTools/bin/8.3.0/System.Threading.Tasks.Extensions.dll b/FormCompareTools/bin/8.3.0/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..eeec928
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/System.Threading.Tasks.Extensions.dll differ
diff --git a/FormCompareTools/bin/8.3.0/comerr64.dll b/FormCompareTools/bin/8.3.0/comerr64.dll
new file mode 100644
index 0000000..0a48cb5
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/comerr64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/gssapi64.dll b/FormCompareTools/bin/8.3.0/gssapi64.dll
new file mode 100644
index 0000000..1628e38
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/gssapi64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/k5sprt64.dll b/FormCompareTools/bin/8.3.0/k5sprt64.dll
new file mode 100644
index 0000000..9237ce9
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/k5sprt64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/krb5_64.dll b/FormCompareTools/bin/8.3.0/krb5_64.dll
new file mode 100644
index 0000000..582f680
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/krb5_64.dll differ
diff --git a/FormCompareTools/bin/8.3.0/krbcc64.dll b/FormCompareTools/bin/8.3.0/krbcc64.dll
new file mode 100644
index 0000000..ba5a519
Binary files /dev/null and b/FormCompareTools/bin/8.3.0/krbcc64.dll differ
diff --git a/FormCompareTools/bin/mysql.data.dll b/FormCompareTools/bin/mysql.data.dll
new file mode 100644
index 0000000..216dbe3
Binary files /dev/null and b/FormCompareTools/bin/mysql.data.dll differ