Class Db2ConnectionManager
Connection manager of a ETLBox connection to a Db2 Server. Uses the official Db2 ADO.NET driver for .NET Core.
Inheritance
Inherited Members
Namespace: ETLBox.Db2
Assembly: ETLBox.Db2.dll
Syntax
public class Db2ConnectionManager : DbConnectionManager<DB2Connection, DB2Transaction, DB2Parameter>, IConnectionManager<DB2Connection, DB2Transaction>, IConnectionManager, IDisposable
Examples
var db2Connection = new Db2ConnectionManager("Data Source=.;");
Constructors
Db2ConnectionManager()
Declaration
public Db2ConnectionManager()
Examples
var db2Connection = new Db2ConnectionManager("Data Source=.;");
Db2ConnectionManager(Db2ConnectionString)
Declaration
public Db2ConnectionManager(Db2ConnectionString connectionString)
Parameters
Type | Name | Description |
---|---|---|
Db2ConnectionString | connectionString |
Examples
var db2Connection = new Db2ConnectionManager("Data Source=.;");
Db2ConnectionManager(string)
Declaration
public Db2ConnectionManager(string connectionString)
Parameters
Type | Name | Description |
---|---|---|
string | connectionString |
Examples
var db2Connection = new Db2ConnectionManager("Data Source=.;");
Properties
ConnectionType
The database type for the connection manager.
Declaration
public override ConnectionType ConnectionType { get; protected set; }
Property Value
Type | Description |
---|---|
ConnectionType |
Overrides
MaxParameterSizeBulkCopy
Returns the maximum amount of parameters that can be used for bulk inserts.
Declaration
public override int MaxParameterSizeBulkCopy { get; }
Property Value
Type | Description |
---|---|
int |
Overrides
MaxParameterSizeSql
Returns the maximum amount of parameters that can be passed into a sql query.
Declaration
public override int MaxParameterSizeSql { get; set; }
Property Value
Type | Description |
---|---|
int |
Overrides
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
Type | Description |
---|---|
string |
Overrides
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
Type | Description |
---|---|
string |
Overrides
SupportDatabases
Indicates if database server does support multiple databases. A database in ETLBox means a schema in MySql.
Declaration
public override bool SupportDatabases { get; }
Property Value
Type | Description |
---|---|
bool |
Overrides
SupportProcedures
Indicates if the database supports procedures
Declaration
public override bool SupportProcedures { get; }
Property Value
Type | Description |
---|---|
bool |
Overrides
UseSqlBulkOperations
By default bulk inserts are done using the DB2BulkCopy. This provides better performance, but it won't support Transactions and foreign key constraints. If you need support for transactions or constraints, set this flag to true.
Declaration
public bool UseSqlBulkOperations { get; set; }
Property Value
Type | Description |
---|---|
bool |
Methods
BulkDelete(ITableData)
Performs a bulk delete
Declaration
public override void BulkDelete(ITableData data)
Parameters
Type | Name | Description |
---|---|---|
ITableData | data | Batch of data |
Overrides
BulkInsert(ITableData)
Performs a bulk insert
Declaration
public override void BulkInsert(ITableData data)
Parameters
Type | Name | Description |
---|---|---|
ITableData | data | Batch of data |
Overrides
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
Type | Name | Description |
---|---|---|
ITableData | data | |
ICollection<><string> | selectColumnNames | |
Action | beforeRowReadAction | |
Action | afterRowReadAction | |
Action<><object>[] | rowActions |
BulkUpdate(ITableData, ICollection<string>, ICollection<string>)
Declaration
public override void BulkUpdate(ITableData data, ICollection<string> setColumnNames, ICollection<string> joinColumnNames)
Parameters
Type | Name | Description |
---|---|---|
ITableData | data | |
ICollection<><string> | setColumnNames | |
ICollection<><string> | joinColumnNames |
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
Type | Name | Description |
---|---|---|
string | tablename |
Overrides
Clone()
Cretes a clone of the current connection manager
Declaration
public override IConnectionManager Clone()
Returns
Type | Description |
---|---|
IConnectionManager | A instance copy of the current connection manager |
Overrides
PrepareBulkInsert(string)
Performs preparations needed to improved performance of a bulk insert operation
Declaration
public override void PrepareBulkInsert(string tablename)
Parameters
Type | Name | Description |
---|---|---|
string | tablename |