mirror of
https://gitlab.com/hashborgir/d2tools.git
synced 2025-04-27 14:55:38 +00:00
208 lines
5.6 KiB
PHP
208 lines
5.6 KiB
PHP
<?php
|
|
|
|
namespace RedBeanPHP;
|
|
|
|
/**
|
|
* Adapter Interface.
|
|
* Describes the API for a RedBeanPHP Database Adapter.
|
|
* This interface defines the API contract for
|
|
* a RedBeanPHP Database Adapter.
|
|
*
|
|
* @file RedBeanPHP/Adapter.php
|
|
* @author Gabor de Mooij and the RedBeanPHP Community
|
|
* @license BSD/GPLv2
|
|
*
|
|
* @copyright
|
|
* (c) G.J.G.T. (Gabor) de Mooij and the RedBeanPHP Community.
|
|
* This source file is subject to the BSD/GPLv2 License that is bundled
|
|
* with this source code in the file license.txt.
|
|
*/
|
|
interface Adapter
|
|
{
|
|
/**
|
|
* Should returns a string containing the most recent SQL query
|
|
* that has been processed by the adapter.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getSQL();
|
|
|
|
/**
|
|
* Executes an SQL Statement using an array of values to bind
|
|
* If $noevent is TRUE then this function will not signal its
|
|
* observers to notify about the SQL execution; this to prevent
|
|
* infinite recursion when using observers.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
* @param boolean $noevent no event firing
|
|
*
|
|
* @return void
|
|
*/
|
|
public function exec( $sql, $bindings = array(), $noevent = FALSE );
|
|
|
|
/**
|
|
* Executes an SQL Query and returns a resultset.
|
|
* This method returns a multi dimensional resultset similar to getAll
|
|
* The values array can be used to bind values to the place holders in the
|
|
* SQL query.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return array
|
|
*/
|
|
public function get( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Executes an SQL Query and returns a resultset.
|
|
* This method returns a single row (one array) resultset.
|
|
* The values array can be used to bind values to the place holders in the
|
|
* SQL query.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getRow( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Executes an SQL Query and returns a resultset.
|
|
* This method returns a single column (one array) resultset.
|
|
* The values array can be used to bind values to the place holders in the
|
|
* SQL query.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getCol( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Executes an SQL Query and returns a resultset.
|
|
* This method returns a single cell, a scalar value as the resultset.
|
|
* The values array can be used to bind values to the place holders in the
|
|
* SQL query.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getCell( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Executes the SQL query specified in $sql and indexes
|
|
* the row by the first column.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getAssoc( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Executes the SQL query specified in $sql and returns
|
|
* an associative array where the column names are the keys.
|
|
*
|
|
* @param string $sql Sstring containing SQL code for databaseQL
|
|
* @param array $bindings values to bind
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getAssocRow( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Returns the latest insert ID.
|
|
*
|
|
* @return integer
|
|
*/
|
|
public function getInsertID();
|
|
|
|
/**
|
|
* Returns the number of rows that have been
|
|
* affected by the last update statement.
|
|
*
|
|
* @return integer
|
|
*/
|
|
public function getAffectedRows();
|
|
|
|
/**
|
|
* Returns a database agnostic Cursor object.
|
|
*
|
|
* @param string $sql string containing SQL code for database
|
|
* @param array $bindings array of values to bind to parameters in query string
|
|
*
|
|
* @return Cursor
|
|
*/
|
|
public function getCursor( $sql, $bindings = array() );
|
|
|
|
/**
|
|
* Returns the original database resource. This is useful if you want to
|
|
* perform operations on the driver directly instead of working with the
|
|
* adapter. RedBean will only access the adapter and never to talk
|
|
* directly to the driver though.
|
|
*
|
|
* @return mixed
|
|
*/
|
|
public function getDatabase();
|
|
|
|
/**
|
|
* This method is part of the RedBean Transaction Management
|
|
* mechanisms.
|
|
* Starts a transaction.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function startTransaction();
|
|
|
|
/**
|
|
* This method is part of the RedBean Transaction Management
|
|
* mechanisms.
|
|
* Commits the transaction.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function commit();
|
|
|
|
/**
|
|
* This method is part of the RedBean Transaction Management
|
|
* mechanisms.
|
|
* Rolls back the transaction.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function rollback();
|
|
|
|
/**
|
|
* Closes database connection.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function close();
|
|
|
|
/**
|
|
* Sets a driver specific option.
|
|
* Using this method you can access driver-specific functions.
|
|
* If the selected option exists the value will be passed and
|
|
* this method will return boolean TRUE, otherwise it will return
|
|
* boolean FALSE.
|
|
*
|
|
* @param string $optionKey option key
|
|
* @param string $optionValue option value
|
|
*
|
|
* @return boolean
|
|
*/
|
|
public function setOption( $optionKey, $optionValue );
|
|
|
|
/**
|
|
* Returns the version string from the database server.
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getDatabaseServerVersion();
|
|
}
|