Poco::Data::ODBC

class SessionImpl

Library: ODBC
Package: ODBC
Header: Poco/Data/ODBC/SessionImpl.h

Description

Implements SessionImpl interface

Inheritance

Direct Base Classes: Poco::Data::AbstractSessionImpl < SessionImpl >

All Base Classes: Poco::Data::AbstractSessionImpl < SessionImpl >

Member Summary

Member Functions: autoBind, autoCommit, autoExtract, begin, canTransact, close, commit, connectorName, createStatementImpl, dataTypeInfo, dbc, getConnectionTimeout, getMaxFieldSize, getQueryTimeout, getTransactionIsolation, hasTransactionIsolation, isAutoBind, isAutoCommit, isAutoExtract, isConnected, isTransaction, isTransactionIsolation, maxStatementLength, open, queryTimeout, rollback, setConnectionTimeout, setMaxFieldSize, setQueryTimeout, setTransactionIsolation

Enumerations

TransactionCapability

ODBC_TXN_CAPABILITY_UNKNOWN = - 1

ODBC_TXN_CAPABILITY_FALSE = 0

ODBC_TXN_CAPABILITY_TRUE = 1

Constructors

SessionImpl

SessionImpl(
    const std::string & connect,
    std::size_t loginTimeout,
    std::size_t maxFieldSize = ODBC_MAX_FIELD_SIZE,
    bool autoBind = true,
    bool autoExtract = true
);

Creates the SessionImpl. Opens a connection to the database. Throws NotConnectedException if connection was not succesful.

SessionImpl

SessionImpl(
    const std::string & connect,
    Poco::Any maxFieldSize = ODBC_MAX_FIELD_SIZE,
    bool enforceCapability = false,
    bool autoBind = true,
    bool autoExtract = true
);

Deprecated. This function is deprecated and should no longer be used.

Creates the SessionImpl. Opens a connection to the database.

Destructor

~SessionImpl

~SessionImpl();

Destroys the SessionImpl.

Member Functions

autoBind inline

void autoBind(
    const std::string & param26,
    bool val
);

Sets automatic binding for the session.

autoCommit

void autoCommit(
    const std::string & param25,
    bool val
);

Sets autocommit property for the session.

autoExtract inline

void autoExtract(
    const std::string & param27,
    bool val
);

Sets automatic extraction for the session.

begin

void begin();

Starts a transaction

canTransact

bool canTransact();

Returns true if connection is transaction-capable.

close

void close();

Closes the connection

commit

void commit();

Commits and ends a transaction

connectorName inline

const std::string & connectorName() const;

Returns the name of the connector.

createStatementImpl

Poco::Data::StatementImpl * createStatementImpl();

Returns an ODBC StatementImpl

dataTypeInfo inline

Poco::Any dataTypeInfo(
    const std::string & rName = ""
);

Returns the data types information.

dbc inline

const ConnectionHandle & dbc() const;

Returns the connection handle.

getConnectionTimeout

std::size_t getConnectionTimeout();

Returns the session connection timeout value.

getMaxFieldSize inline

Poco::Any getMaxFieldSize(
    const std::string & rName = ""
);

Returns the max field size (the default used when column size is unknown).

getQueryTimeout inline

Poco::Any getQueryTimeout(
    const std::string & param29
);

Returns the timeout (in seconds) for queries, or -1 if no timeout has been set.

getTransactionIsolation

Poco::UInt32 getTransactionIsolation();

Returns the transaction isolation level.

hasTransactionIsolation

bool hasTransactionIsolation(
    Poco::UInt32
);

Returns true if and only if the transaction isolation level corresponding to the supplied bitmask is supported.

isAutoBind inline

bool isAutoBind(
    const std::string & name = ""
);

Returns true if binding is automatic for this session.

isAutoCommit

bool isAutoCommit(
    const std::string & name = ""
);

Returns autocommit property value.

isAutoExtract inline

bool isAutoExtract(
    const std::string & name = ""
);

Returns true if extraction is automatic for this session.

isConnected

bool isConnected();

Returns true if session is connected

isTransaction

bool isTransaction();

Returns true if and only if a transaction is in progress.

isTransactionIsolation inline

bool isTransactionIsolation(
    Poco::UInt32
);

Returns true if and only if the transaction isolation level corresponds to the supplied bitmask.

maxStatementLength

int maxStatementLength();

Returns maximum length of SQL statement allowed by driver.

open

void open(
    const std::string & connect = ""
);

Opens a connection to the Database

queryTimeout inline

int queryTimeout() const;

Returns the timeout (in seconds) for queries, or -1 if no timeout has been set.

rollback

void rollback();

Aborts a transaction

setConnectionTimeout

void setConnectionTimeout(
    std::size_t timeout
);

Sets the session connection timeout value.

setMaxFieldSize inline

void setMaxFieldSize(
    const std::string & rName,
    const Poco::Any & rValue
);

Sets the max field size (the default used when column size is unknown).

setQueryTimeout inline

void setQueryTimeout(
    const std::string & param28,
    const Poco::Any & value
);

Sets the timeout (in seconds) for queries. Value must be of type int.

setTransactionIsolation

void setTransactionIsolation(
    Poco::UInt32 ti
);

Sets the transaction isolation level.

Variables

ODBC_MAX_FIELD_SIZE static

static const std::size_t ODBC_MAX_FIELD_SIZE = 1024u;