# Poco::Data

# class AbstractBinding

Library: Data
Package: DataCore
Header: Poco/Data/AbstractBinding.h

## Description

AbstractBinding connects a value with a placeholder via an AbstractBinder interface.

## Inheritance

Direct Base Classes: Poco::RefCountedObject

All Base Classes: Poco::RefCountedObject

Known Derived Classes: Binding

## Member Summary

Member Functions: bind, canBind, getBinder, numOfColumnsHandled, numOfRowsHandled, reset, setBinder

Inherited Functions: duplicate, referenceCount, release

## Constructors

### AbstractBinding

AbstractBinding();

Creates the AbstractBinding.

## Destructor

### ~AbstractBinding

virtual ~AbstractBinding();

Destroys the AbstractBinding.

## Member Functions

### bind

virtual void bind(
std::size_t pos
) = 0;

Binds a value to the given column position

### canBind

virtual bool canBind() const = 0;

Returns true if we have enough data to bind

### getBinder

AbstractBinder * getBinder() const;

Returns the AbstractBinder used for binding data.

### numOfColumnsHandled

virtual std::size_t numOfColumnsHandled() const = 0;

Returns the number of columns that the binding handles.

The trivial case will be one single column but when complex types are used this value can be larger than one.

### numOfRowsHandled

virtual std::size_t numOfRowsHandled() const = 0;

Returns the number of rows that the binding handles.

The trivial case will be one single row but for collection data types (ie vector) it can be larger.

### reset

virtual void reset() = 0;

Allows a binding to be reused.

### setBinder

void setBinder(
AbstractBinder * pBinder
);

Sets the object used for binding; object does NOT take ownership of the pointer.