<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://ibpp.sourceforge.io/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>www.ibpp.org reference</title>
        <description></description>
        <link>https://ibpp.sourceforge.io/</link>
        <lastBuildDate>Thu, 30 Apr 2026 22:41:00 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://ibpp.sourceforge.io/lib/tpl/dokuwiki/images/favicon.ico</url>
            <title>www.ibpp.org</title>
            <link>https://ibpp.sourceforge.io/</link>
        </image>
        <item>
            <title>reference:array</title>
            <link>https://ibpp.sourceforge.io/reference/array</link>
            <description>IBPP::Array

Firebird and Interbase do support the storage of arrays of values in a single column of a single row. This feature is not widely available at the Dynamic SQL interface level, and best require some C-API programming to be used. IBPP allows you to read and write those array columns easily.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:blob</title>
            <link>https://ibpp.sourceforge.io/reference/blob</link>
            <description>IBPP::Blob

Firebird and Interbase do support the storage of arbitrary binary data in a single column, the type of such a column is BLOB. This feature is not widely available at the Dynamic SQL interface level (except some simple text BLOBs extractions), and best require some C-</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:clientlibsearchpaths</title>
            <link>https://ibpp.sourceforge.io/reference/clientlibsearchpaths</link>
            <description>void ClientLibSearchPaths(const std::string&amp;)

This function is currently only implemented in Windows builds of IBPP. It is a no-op on other platforms. It allows the host application to better control which instance of fbclient.dll will get loaded and used by IBPP if there exists the possibility of multiple copies of fbclient.dll on the machine.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:compilers</title>
            <link>https://ibpp.sourceforge.io/reference/compilers</link>
            <description>Compilers

This is a short documentation instructing you how to integrate IBPP source code in your own projects.
It is basically the same information as what is available in the &#039;howtobuild.txt&#039; file.

Starting with version 2.5 IBPP does not provide anymore a stand-alone build procedure.
IBPP is a set of C++ classes.  A small hand of .h and .cpp files implement them.
You might wish to compile them separately in a lib, then use the lib in your own programs,
but it is as well easy, if not easier a…</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:conversions</title>
            <link>https://ibpp.sourceforge.io/reference/conversions</link>
            <description>Type Conversions

The bulk of programming with IBPP to interact with a Firebird database is to exchange values with the database, reading columns values and inserting or updating columns values. SQL has a number of basic types and C++ has its own set of primitive types. This article discusses relationships between both worlds, in the context of IBPP.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:database</title>
            <link>https://ibpp.sourceforge.io/reference/database</link>
            <description>IBPP::Database

The IBPP::Database Interface represents a single connection to a database. Along with IBPP::Transaction and IBPP::Statement, it is the core of IBPP. You need at least one instance of each to do anything against the data stored in a database.

Definition</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:date</title>
            <link>https://ibpp.sourceforge.io/reference/date</link>
            <description>IBPP::Date

The IBPP::Date class represents a date value. It is not an interface class, with automatic smart pointer management like for instance the Database class. It is a plain classical C++ class. Use it to interact easily with DATE (SQL) columns in your databases.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:dbkey</title>
            <link>https://ibpp.sourceforge.io/reference/dbkey</link>
            <description>IBPP::DBKey

The IBPP::DBKey class is used to hold a DBKEY, which is an opaque data type returned by the Firebird server when asked for the RDB$DB_KEY pseudo column. It is not an interface class, with automatic smart pointer management like for instance the</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:driver</title>
            <link>https://ibpp.sourceforge.io/reference/driver</link>
            <description>IBPP::Driver

 This is preliminary documentation regarding the unreleased version 3.0. 

The IBPP::Driver Interface represents a single instance of one Firebird or Interbase client library. It is through such a Driver instance that you will get all other interfaces of IBPP. So this is the most basic building block of any IBPP based host program.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:29 +0000</pubDate>
        </item>
        <item>
            <title>reference:eventinterface</title>
            <link>https://ibpp.sourceforge.io/reference/eventinterface</link>
            <description>class EventInterface

The EventInterface class is strictly an interface class. IBPP does not implement this class. To use the Events mechanism, you will have to derive a class from this one and implement its virtual ibppEventHandler() method. IBPP will call that method to notify the events occurences.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:events</title>
            <link>https://ibpp.sourceforge.io/reference/events</link>
            <description>IBPP::Events

The Events object allows easy interactions with the events mechanism offered by Firebird. One Events object represents a set of events, linked to one Database attachment.

You really should also read the EventInterface article to grab a complete view on this topic.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:exceptions</title>
            <link>https://ibpp.sourceforge.io/reference/exceptions</link>
            <description>Exception Handling

IBPP reports errors exclusively through C++ exceptions. Return values of methods calls are never used to return success or failure. All exceptions classes thrown by IBPP derive from the std::exception class and re-implement their virtual method</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:guidelines</title>
            <link>https://ibpp.sourceforge.io/reference/guidelines</link>
            <description>Namespace

IBPP introduces a C++ name space : &#039;IBPP&#039;. Everything is defined inside that namespace. Depending on your application needs, on your mood or if name clashing happens, you could do a :
&lt;pre&gt;using namespace IBPP;&lt;/pre&gt;
in your program files, or choose to use the (short) prefix IBPP:: at a lot of place. The choice is yours. In these notes however, we will assume the second option : prefixing everywhere needed with &#039;IBPP::&#039;.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:overview</title>
            <link>https://ibpp.sourceforge.io/reference/overview</link>
            <description>Overview of IBPP Structure

 Here is the overall big picture of the relationships between the various IBPP objects. Don&#039;t mis-read this graph: it is not a class derivation tree. The arrows show you the runtime dependencies of objects.

The blue rounded shapes are the IBPP &#039;Interfaces&#039;. You call their corresponding</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:samples</title>
            <link>https://ibpp.sourceforge.io/reference/samples</link>
            <description>Minimalist Sample Code

This section of the documentation drives you, without explaining all the details, through short program excerpts. The purpose is to show you the big picture : how you can create or connect to a database and start working with it.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:30 +0000</pubDate>
        </item>
        <item>
            <title>reference:service</title>
            <link>https://ibpp.sourceforge.io/reference/service</link>
            <description>IBPP::Service

The IBPP::Service Interface represents a single connection to the Firebird service manager. Such a connection is used for various maintenance work.

Definition

See the file ibpp.h for an up-to-date definition of the interface. Lookup the IService class.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:statement</title>
            <link>https://ibpp.sourceforge.io/reference/statement</link>
            <description>IBPP::Statement

The IBPP::Statement Interface is used to issue queries and other statements to a database, in the context of a transaction. So, along with IBPP::Database and IBPP::Transaction, it is the core of IBPP. You need at least one instance of each to do anything against the data stored in a database.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:time</title>
            <link>https://ibpp.sourceforge.io/reference/time</link>
            <description>IBPP:Time

The IBPP::Time class represents a time value. It is not an interface class, with automatic smart pointer management like for instance the Database class. It is a plain classical C++ class. Use it to interact easily with TIME (SQL) columns in your databases.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:timestamp</title>
            <link>https://ibpp.sourceforge.io/reference/timestamp</link>
            <description>IBPP::Timestamp

The IBPP::Timestamp class represents a SQL timestamp value. It is not an interface class, with automatic smart pointer management like for instance the database class. It is a plain classical C++ class. Use it to interact easily with TIMESTAMP (SQL) columns in your databases.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:transaction</title>
            <link>https://ibpp.sourceforge.io/reference/transaction</link>
            <description>IBPP::Transaction

The IBPP::Transaction Interface represents a transaction (!). Along with IBPP::Database and IBPP::Statement, it is the core of IBPP. You need at least one instance of each to do anything against the data stored in a database.

Definition

See the file ibpp.h for an up-to-date definition of the interface. Lookup the ITransaction class.</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:user</title>
            <link>https://ibpp.sourceforge.io/reference/user</link>
            <description>IBPP::User

The IBPP::User class holds the information that the Firebird server manages about a user. It is not an interface class, with automatic smart pointer management like for instance the Database class. It is a plain classical C++ class. It is used by some of the</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
        <item>
            <title>reference:version3</title>
            <link>https://ibpp.sourceforge.io/reference/version3</link>
            <description>IBPP Version 3



 This is preliminary documentation regarding the unreleased version 3.0. 

Let&#039;s have a look to IBPP 3.0 structure. You can compare it with previous versions.

Well, nothing big changed. The only real structural change is the addition of the</description>
            <author>anonymous@undisclosed.example.com (Anonymous)</author>
        <category>reference</category>
            <pubDate>Tue, 20 Jun 2023 13:51:31 +0000</pubDate>
        </item>
    </channel>
</rss>
