Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::OCI::CStringArrayBind Class Reference

CStringArrayBind. More...

#include <HOCI.h>

Inheritance diagram for Harlinn::OCI::CStringArrayBind:
[legend]
Collaboration diagram for Harlinn::OCI::CStringArrayBind:
[legend]

Public Types

using BoundType = WideString
 

Public Member Functions

 CStringArrayBind () noexcept
 
 CStringArrayBind (const OCI::Statement &statement, size_t arraySize, size_t maximumArraySize, size_t maximumColumnSize)
 
 CStringArrayBind (const OCI::Statement &statement, UInt32 position, size_t arraySize, size_t maximumArraySize, size_t maximumColumnSize)
 
 CStringArrayBind (const OCI::Statement &statement, const WideString &name, size_t arraySize, size_t maximumArraySize, size_t maximumColumnSize)
 
HO_EXPORT ~CStringArrayBind ()
 
virtual HO_EXPORT void * Data (size_t index) const override
 
virtual HO_EXPORT bool AsBoolean (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, bool newValue) override
 
virtual HO_EXPORT Byte AsByte (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, Byte newValue) override
 
virtual HO_EXPORT SByte AsSByte (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, SByte newValue) override
 
virtual HO_EXPORT Int16 AsInt16 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, Int16 newValue) override
 
virtual HO_EXPORT UInt16 AsUInt16 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, UInt16 newValue) override
 
virtual HO_EXPORT Int32 AsInt32 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, Int32 newValue) override
 
virtual HO_EXPORT UInt32 AsUInt32 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, UInt32 newValue) override
 
virtual HO_EXPORT Int64 AsInt64 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, Int64 newValue) override
 
virtual HO_EXPORT UInt64 AsUInt64 (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, UInt64 newValue) override
 
virtual HO_EXPORT float AsSingle (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, float newValue) override
 
virtual HO_EXPORT double AsDouble (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, double newValue) override
 
virtual HO_EXPORT DateTime AsDateTime (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, const DateTime &newValue) override
 
virtual HO_EXPORT TimeSpan AsTimeSpan (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, const TimeSpan &newValue) override
 
virtual HO_EXPORT WideString AsString (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, const WideString &newValue) override
 
HO_EXPORT void Assign (size_t index, const wchar_t *newValue)
 
virtual HO_EXPORT Guid AsGuid (size_t index) const override
 
virtual HO_EXPORT void Assign (size_t index, const Guid &newValue) override
 
- Public Member Functions inherited from Harlinn::OCI::ArrayBind
 ArrayBind () noexcept
 
 ArrayBind (const OCI::Statement &statement)
 
 ArrayBind (const OCI::Statement &statement, UInt32 position)
 
 ArrayBind (const OCI::Statement &statement, const WideString &name)
 
Int16 Indicator (size_t index) const
 
void SetIndicator (size_t index, Int16 value)
 
void SetDBNull (size_t index)
 
void SetDBNotNull (size_t index)
 
virtual std::vector< ByteAsBytes (size_t index) const
 
virtual void Assign (size_t index, const std::vector< Byte > &newValue)
 
- Public Member Functions inherited from Harlinn::OCI::BindBase
 BindBase (const OCI::Statement &statement)
 
 BindBase (const OCI::Statement &statement, UInt32 position)
 
 BindBase (const OCI::Statement &statement, const WideString &name)
 
const OCI::EnvironmentEnvironment () const
 
const OCI::ErrorHandleError () const noexcept final override
 Provides access to the OCIError that will be used for OCI calls for this object.
 
HO_EXPORT void BindByPos (UInt32 positon, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *actualLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 plsqlMaxArrayLength=0, UInt32 *plsqlArrayLength=nullptr, UInt32 mode=0)
 
HO_EXPORT void BindByName (const WideString &name, OraType dataType, void *dataAddress, Int64 dataSize, Int16 *indicators, UInt32 *actualLengths=nullptr, UInt16 *returnCodes=nullptr, UInt32 plsqlMaxArrayLength=0, UInt32 *plsqlArrayLength=nullptr, UInt32 mode=0)
 
void OnExecute (UInt32 iters)
 
constexpr const OCI::StatementStatement () const
 
const OCI::ServiceContextServiceContext () const
 
UInt32 Position () const
 
void SetPosition (UInt32 position)
 
bool IsBindByPosition () const
 
const WideStringName () const
 
WideString Name ()
 
void SetName (const WideString &name)
 
void SetCharCount (UInt32 charCount)
 Sets the number of characters in character type data. (OCI_ATTR_CHAR_COUNT)
 
void SetMaxCharSize (Int32 maxCharSize)
 Sets the number of characters that an application reserves on the server to store the data being bound.
 
void SetMaxDataSize (Int32 maxDataSize)
 Sets the maximum number of bytes allowed in the buffer on the server side to accommodate client-side bind data after character set conversions.
 
UInt32 CollationId () const
 Retrieves the derived collation of a placeholder expression corresponding to this bind handle in a SQL statement. The value is relevant only for bind variables with character data types.
 
void SetCollationId (UInt32 collationId) const
 Sets the derived collation of a placeholder expression corresponding to this bind handle in a SQL statement.The attribute is relevant only for bind variables with character data types.
 
UInt16 CharacterSet () const
 Retrives the character set ID of the bind handle.
 
void SetCharacterSet (UInt16 characterSetId) const
 Sets the character set ID of the bind handle.
 
OCI::CharacterSetForm CharacterSetForm () const
 Character set form of the bind handle.The default form is OCI::CharacterSetForm::Implicit.Setting this attribute causes the bind handle to use the database or national character set on the client side.Set this attribute to OCI::CharacterSetForm::NChar for the national character set or OCI::CharacterSetForm::Implicit for the database character set.
 
void SetCharacterSetForm (OCI::CharacterSetForm charsetForm)
 
UInt32 RowsReturned () const
 Returns the number of rows that will be returned in the current iteration when you are in the OUT callback function for binding a DML statement with a RETURNING clause. (OCI_ATTR_ROWS_RETURNED)
 
- Public Member Functions inherited from Harlinn::OCI::HandleBase
constexpr void * Handle () const noexcept
 Provides access to the value of the handle object.
 
constexpr operator bool () const noexcept
 Test if the handle value is assigned.
 
constexpr bool IsValid () const noexcept
 Test if the handle value is assigned.
 
constexpr OCI::HandleType HandleType () const noexcept
 Returns a value identifying the type of the wrapped handle object.
 

Static Public Attributes

static constexpr OCI::OraType ExternalType = OCI::OraType::STR
 

Protected Member Functions

virtual HO_EXPORT void Bind (UInt32 positon, UInt32 iters) override
 
virtual HO_EXPORT void Bind (const WideString &name, UInt32 iters) override
 
- Protected Member Functions inherited from Harlinn::OCI::ArrayBind
void SimpleBindByPos (UInt32 positon, OraType dataType, void *dataAddress, Int32 dataSize, UInt32 maximumNumberOfElements, UInt32 *currentNumberOfElements)
 
void SimpleBindByName (const WideString &name, OraType dataType, void *dataAddress, Int32 dataSize, UInt32 maximumNumberOfElements, UInt32 *currentNumberOfElements)
 
void resize (size_t newSize)
 
- Protected Member Functions inherited from Harlinn::OCI::BindBase
 BindBase () noexcept
 
bool IsPlSQL () const
 
- Protected Member Functions inherited from Harlinn::OCI::HandleBase
constexpr HandleBase () noexcept
 Default constructor.
 
constexpr HandleBase (OCI::HandleType handleType, void *handle, bool ownsHandle) noexcept
 Constructs a new HandleBase object.
 
 HandleBase (const HandleBase &other)=delete
 
constexpr HandleBase (HandleBase &&other) noexcept
 Move constructor.
 
virtual ~HandleBase ()
 Destructor.
 
constexpr void SetHandle (void *newHandleValue, bool ownsHandle) noexcept
 Assigns the handle value and ownership to this object.
 
constexpr bool OwnsHandle () const noexcept
 Returns true if this object is the owner of the handle value.
 
void * DetachHandle ()
 If this object is the owner of a handle this function rescinds that ownership, and returns the handle value without closing the handle.
 
void DestroyHandle ()
 Destroys the handle if it is owned by this object.
 
HandleBaseoperator= (const HandleBase &other)=delete
 
constexpr HandleBaseoperator= (HandleBase &&other) noexcept
 
constexpr void swap (HandleBase &other) noexcept
 
template<typename Derived >
constexpr void Take (Derived &&derived) noexcept
 Template function used to implement move assignement in derived classes.
 
void InitializeHandle (void *handle, bool ownsHandle)
 Provides a "safe" mechanism for assigning a handle value. This functions throws if a handle value is already assigned to this object.
 
HO_EXPORT Int32 GetAttribute (void *buffer, UInt32 *size, Attribute attribute) const
 Gets the value of an attribute from the handle.
 
HO_EXPORT Int32 SetAttribute (void *buffer, UInt32 size, Attribute attribute) const
 Sets the value of an attribute on the handle.
 
DateTime GetDateTimeAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a DateTime.
 
void SetDateTimeAttribute (Attribute attribute, const DateTime &value) const
 Sets the value of an attribute on the handle as a DateTime.
 
template<WideStringLike StringT = WideString>
StringT GetStringAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a WideString.
 
template<WideStringLike StringT = WideString>
StringT GetStringAttributeFromByteString (Attribute attribute) const
 Gets the value of an attribute from the handle as a WideString For use with attributes that are not returned as UTF-16.
 
template<WideStringLike StringT>
void SetStringAttribute (Attribute attribute, const StringT &value) const
 Sets the value of an attribute on the handle as a WideString.
 
void SetStringAttribute (Attribute attribute, const wchar_t *value, size_t valueLength) const
 
bool GetBooleanAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a bool.
 
void SetBooleanAttribute (Attribute attribute, bool value) const
 Sets the value of an attribute on the handle as a bool.
 
Byte GetByteAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a Byte.
 
void SetByteAttribute (Attribute attribute, Byte value) const
 Sets the value of an attribute on the handle as a Byte.
 
SByte GetSByteAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a SByte.
 
void SetSByteAttribute (Attribute attribute, SByte value) const
 Sets the value of an attribute on the handle as a Byte.
 
Int16 GetInt16Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int16.
 
void SetInt16Attribute (Attribute attribute, Int16 value) const
 Sets the value of an attribute on the handle as an Int16.
 
UInt16 GetUInt16Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt16.
 
void SetUInt16Attribute (Attribute attribute, UInt16 value) const
 Sets the value of an attribute on the handle as an UInt16.
 
Int32 GetInt32Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int32.
 
void SetInt32Attribute (Attribute attribute, Int32 value) const
 Sets the value of an attribute on the handle as an Int32.
 
UInt32 GetUInt32Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt32.
 
void SetUInt32Attribute (Attribute attribute, UInt32 value) const
 Sets the value of an attribute on the handle as an UInt32.
 
Int64 GetInt64Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an Int64.
 
void SetInt64Attribute (Attribute attribute, Int64 value) const
 Sets the value of an attribute on the handle as an Int64.
 
UInt64 GetUInt64Attribute (Attribute attribute) const
 Gets the value of an attribute from the handle as an UInt64.
 
void SetUInt64Attribute (Attribute attribute, UInt64 value) const
 Sets the value of an attribute on the handle as an UInt64.
 
void * GetPointerAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a pointer.
 
void SetPointerAttribute (Attribute attribute, void *value) const
 Sets the value of an attribute on the handle as a pointer.
 
OCI::NumberGetNumberAttribute (Attribute attribute) const
 Gets the value of an attribute from the handle as a pointer to an OCI::Number.
 

Private Types

using Base = ArrayBind
 

Private Member Functions

HO_EXPORT void Resize (size_t arraySize, size_t maximumArraySize, size_t elementSize)
 

Private Attributes

UInt32 arraySize_
 
UInt32 arrayMaxSize_
 
size_t maxColumnDataSize_
 
wchar_t * data_
 
std::vector< UInt32dataSizes_
 

Additional Inherited Members

- Static Protected Member Functions inherited from Harlinn::OCI::HandleBase
static HO_EXPORT void HandleFree (void *handle, OCI::HandleType handleType) noexcept
 Calls OCIHandleFree to release the handle.
 
- Protected Attributes inherited from Harlinn::OCI::ArrayBind
std::vector< Int16indicator_
 

Detailed Description

Member Typedef Documentation

◆ Base

◆ BoundType

Constructor & Destructor Documentation

◆ CStringArrayBind() [1/4]

Harlinn::OCI::CStringArrayBind::CStringArrayBind ( )
inlinenoexcept

◆ CStringArrayBind() [2/4]

Harlinn::OCI::CStringArrayBind::CStringArrayBind ( const OCI::Statement & statement,
size_t arraySize,
size_t maximumArraySize,
size_t maximumColumnSize )
inline

◆ CStringArrayBind() [3/4]

Harlinn::OCI::CStringArrayBind::CStringArrayBind ( const OCI::Statement & statement,
UInt32 position,
size_t arraySize,
size_t maximumArraySize,
size_t maximumColumnSize )
inline

◆ CStringArrayBind() [4/4]

Harlinn::OCI::CStringArrayBind::CStringArrayBind ( const OCI::Statement & statement,
const WideString & name,
size_t arraySize,
size_t maximumArraySize,
size_t maximumColumnSize )
inline

◆ ~CStringArrayBind()

Harlinn::OCI::CStringArrayBind::~CStringArrayBind ( )

Member Function Documentation

◆ AsBoolean()

bool Harlinn::OCI::CStringArrayBind::AsBoolean ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsByte()

Byte Harlinn::OCI::CStringArrayBind::AsByte ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsDateTime()

DateTime Harlinn::OCI::CStringArrayBind::AsDateTime ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsDouble()

double Harlinn::OCI::CStringArrayBind::AsDouble ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsGuid()

Guid Harlinn::OCI::CStringArrayBind::AsGuid ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsInt16()

short Harlinn::OCI::CStringArrayBind::AsInt16 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsInt32()

Int32 Harlinn::OCI::CStringArrayBind::AsInt32 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsInt64()

Int64 Harlinn::OCI::CStringArrayBind::AsInt64 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsSByte()

SByte Harlinn::OCI::CStringArrayBind::AsSByte ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [1/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
bool newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [2/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
Byte newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [3/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
const DateTime & newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [4/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
const Guid & newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [5/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
const TimeSpan & newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [6/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
const wchar_t * newValue )

◆ Assign() [7/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
const WideString & newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [8/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
double newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [9/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
float newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [10/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
Int16 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [11/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
Int32 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [12/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
Int64 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [13/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
SByte newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [14/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
UInt16 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [15/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
UInt32 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Assign() [16/16]

void Harlinn::OCI::CStringArrayBind::Assign ( size_t index,
UInt64 newValue )
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsSingle()

float Harlinn::OCI::CStringArrayBind::AsSingle ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsString()

WideString Harlinn::OCI::CStringArrayBind::AsString ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsTimeSpan()

TimeSpan Harlinn::OCI::CStringArrayBind::AsTimeSpan ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsUInt16()

UInt16 Harlinn::OCI::CStringArrayBind::AsUInt16 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsUInt32()

UInt32 Harlinn::OCI::CStringArrayBind::AsUInt32 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ AsUInt64()

UInt64 Harlinn::OCI::CStringArrayBind::AsUInt64 ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Bind() [1/2]

void Harlinn::OCI::CStringArrayBind::Bind ( const WideString & name,
UInt32 iters )
overrideprotectedvirtual

Reimplemented from Harlinn::OCI::BindBase.

◆ Bind() [2/2]

void Harlinn::OCI::CStringArrayBind::Bind ( UInt32 positon,
UInt32 iters )
overrideprotectedvirtual

Reimplemented from Harlinn::OCI::BindBase.

◆ Data()

void * Harlinn::OCI::CStringArrayBind::Data ( size_t index) const
overridevirtual

Reimplemented from Harlinn::OCI::ArrayBind.

◆ Resize()

void Harlinn::OCI::CStringArrayBind::Resize ( size_t arraySize,
size_t maximumArraySize,
size_t elementSize )
private

Member Data Documentation

◆ arrayMaxSize_

UInt32 Harlinn::OCI::CStringArrayBind::arrayMaxSize_
private

◆ arraySize_

UInt32 Harlinn::OCI::CStringArrayBind::arraySize_
private

◆ data_

wchar_t* Harlinn::OCI::CStringArrayBind::data_
private

◆ dataSizes_

std::vector<UInt32> Harlinn::OCI::CStringArrayBind::dataSizes_
private

◆ ExternalType

OCI::OraType Harlinn::OCI::CStringArrayBind::ExternalType = OCI::OraType::STR
staticconstexpr

◆ maxColumnDataSize_

size_t Harlinn::OCI::CStringArrayBind::maxColumnDataSize_
private

The documentation for this class was generated from the following files: