# Poco::Data

# template < class C >

# class InternalExtraction

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

## Description

Vector Data Type specialization for extraction of values from a query result set. Vector bool specialization for extraction of values from a query result set. List Data Type specialization for extraction of values from a query result set. Deque Data Type specialization for extraction of values from a query result set. Container Data Type specialization extension for extraction of values from a query result set.

This class is intended for PocoData internal use - it is used by StatementImpl to automaticaly create internal Extraction in cases when statement returns data and no external storage was supplied. It is later used by RecordSet to retrieve the fetched data after statement execution. It takes ownership of the Column pointer supplied as constructor argument. Column object, in turn owns the data container pointer.

InternalExtraction objects can not be copied or assigned.

## Inheritance

Direct Base Classes: Extraction < C >

All Base Classes: Extraction < C >

## Member Summary

Member Functions: column, isNull, reset, value

## Types Aliases

### Ptr

using Ptr = SharedPtr < Type >;

### Type

using Type = Extraction < ValType >;

### ValPtr

using ValPtr = SharedPtr < ValType >;

### ValType

using ValType = typename C::value_type;

## Constructors

### InternalExtraction

InternalExtraction(
C & result,
Column < C > * pColumn,
const Position & pos = Position (0)
);

Creates InternalExtraction.

## Destructor

### ~InternalExtraction

~InternalExtraction();

Destroys InternalExtraction.

## Member Functions

### column

const Column < C > & column() const;

### isNull

bool isNull(
std::size_t row
) const;

### reset

void reset();

### value

const ValType & value(
int index
) const;