Class MySqlConnectionManager

Connection manager of a ETLBox connection to a MySql Server. Uses the official MySql ADO.NET driver for .NET.

Inheritance
object
DbConnectionManager<MySqlConnection, MySqlTransaction, MySqlParameter>
MySqlConnectionManager
Implements
IConnectionManager<MySqlConnection, MySqlTransaction>
System.IDisposable
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: ETLBox.Connection
Assembly: ETLBox.MySql.dll
Syntax
    public class MySqlConnectionManager : DbConnectionManager<MySqlConnection, MySqlTransaction, MySqlParameter>, IConnectionManager<MySqlConnection, MySqlTransaction>, IConnectionManager, IDisposable
Examples
var mySqlConnection = new MySqlConnectionManager("Data Source=.;");

Constructors

MySqlConnectionManager()

Declaration
    public MySqlConnectionManager()
Examples
var mySqlConnection = new MySqlConnectionManager("Data Source=.;");

MySqlConnectionManager(MySqlConnectionString)

Declaration
    public MySqlConnectionManager(MySqlConnectionString connectionString)
Parameters
TypeNameDescription
MySqlConnectionStringconnectionString
Examples
var mySqlConnection = new MySqlConnectionManager("Data Source=.;");

MySqlConnectionManager(string)

Declaration
    public MySqlConnectionManager(string connectionString)
Parameters
TypeNameDescription
stringconnectionString
Examples
var mySqlConnection = new MySqlConnectionManager("Data Source=.;");

Properties

ConnectionManagerType

The database type for the connection manager.

Declaration
    public override ConnectionManagerType ConnectionManagerType { get; protected set; }
Property Value
TypeDescription
ConnectionManagerType
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.ConnectionManagerType

MaxParameterSizeBulkCopy

Returns the maximum amount of parameters that can be used for bulk inserts.

Declaration
    public override int MaxParameterSizeBulkCopy { get; protected set; }
Property Value
TypeDescription
int
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.MaxParameterSizeBulkCopy

MaxParameterSizeSql

Returns the maximum amount of parameters that can be passed into a sql query.

Declaration
    public override int MaxParameterSizeSql { get; protected set; }
Property Value
TypeDescription
int
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.MaxParameterSizeSql

NeedsROWKeyword

Declaration
    public virtual bool NeedsROWKeyword { get; }
Property Value
TypeDescription
bool
Examples
var mySqlConnection = new MySqlConnectionManager("Data Source=.;");

QB

The quotation begin character that is used in the database. E.g. SqlServer uses: '[' and Postgres: '"'

Declaration
    public override string QB { get; protected set; }
Property Value
TypeDescription
string
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.QB

QE

The quotation end character that is used in the database. E.g. SqlServer uses: ']' and Postgres: '"'

Declaration
    public override string QE { get; protected set; }
Property Value
TypeDescription
string
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.QE

SupportSchemas

Indicates if the database supports schemas In MySql, this is false because the schema here is a database in ETLBox. Use SupportDatabases instead

Declaration
    public override bool SupportSchemas { get; }
Property Value
TypeDescription
bool
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.SupportSchemas

Methods

BulkDelete(ITableData)

Performs a bulk delete

Declaration
    public override void BulkDelete(ITableData data)
Parameters
TypeNameDescription
ITableDatadata

Batch of data

Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.BulkDelete(ETLBox.ControlFlow.ITableData)

BulkInsert(ITableData)

Performs a bulk insert

Declaration
    public override void BulkInsert(ITableData data)
Parameters
TypeNameDescription
ITableDatadata

Batch of data

Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.BulkInsert(ETLBox.ControlFlow.ITableData)

BulkSelect(ITableData, ICollection<string>, Action, Action, params Action<object>[])

Declaration
    public override void BulkSelect(ITableData data, ICollection<string> selectColumnNames, Action beforeRowReadAction, Action afterRowReadAction, params Action<object>[] rowActions)
Parameters
TypeNameDescription
ITableDatadata
System.Collections.Generic.ICollection<T><string>selectColumnNames
System.ActionbeforeRowReadAction
System.ActionafterRowReadAction
System.Action<T><object>[]rowActions
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.BulkSelect(ETLBox.ControlFlow.ITableData, System.Collections.Generic.ICollection<string>, System.Action, System.Action, params System.Action<object>[])

BulkUpdate(ITableData, ICollection<string>, ICollection<string>)

Performs a bulk update

Declaration
    public override void BulkUpdate(ITableData data, ICollection<string> setColumnNames, ICollection<string> joinColumnNames)
Parameters
TypeNameDescription
ITableDatadata

Batch of data

System.Collections.Generic.ICollection<T><string>setColumnNames

The column names used in the set part of the update statement

System.Collections.Generic.ICollection<T><string>joinColumnNames

The column names to join for the update

Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.BulkUpdate(ETLBox.ControlFlow.ITableData, System.Collections.Generic.ICollection<string>, System.Collections.Generic.ICollection<string>)

CleanUpBulkInsert(string)

Called after the whole bulk insert operation to change back settings made to improve bulk insert performance

Declaration
    public override void CleanUpBulkInsert(string tablename)
Parameters
TypeNameDescription
stringtablename
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.CleanUpBulkInsert(string)

Clone()

Cretes a clone of the current connection manager

Declaration
    public override IConnectionManager Clone()
Returns
TypeDescription
IConnectionManager

A instance copy of the current connection manager

Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.Clone()

PrepareBulkInsert(string)

Performs preparations needed to improved performance of a bulk insert operation

Declaration
    public override void PrepareBulkInsert(string tablename)
Parameters
TypeNameDescription
stringtablename
Overrides
ETLBox.Connection.DbConnectionManager<MySql.Data.MySqlClient.MySqlConnection, MySql.Data.MySqlClient.MySqlTransaction, MySql.Data.MySqlClient.MySqlParameter>.PrepareBulkInsert(string)

Implements

System.IDisposable