+++ /dev/null
-<?php
-
-namespace RedBeanPHP;
-
-/**
- * Interface for database drivers.
- * The Driver API conforms to the ADODB pseudo standard
- * for database drivers.
- *
- * @file RedBeanPHP/Driver.php
- * @author Gabor de Mooij and the RedBeanPHP Community
- * @license BSD/GPLv2
- *
- * @copyright
- * 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 Driver
-{
- /**
- * Runs a query and fetches results as a multi dimensional array.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return array
- */
- public function GetAll( $sql, $bindings = array() );
-
- /**
- * Runs a query and fetches results as a column.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return array
- */
- public function GetCol( $sql, $bindings = array() );
-
- /**
- * Runs a query and returns results as a single cell.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return mixed
- */
- public function GetOne( $sql, $bindings = array() );
-
- /**
- * Runs a query and returns results as an associative array
- * indexed by the first column.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return mixed
- */
- public function GetAssocRow( $sql, $bindings = array() );
-
- /**
- * Runs a query and returns a flat array containing the values of
- * one row.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return array
- */
- public function GetRow( $sql, $bindings = array() );
-
- /**
- * Executes SQL code and allows key-value binding.
- * This function allows you to provide an array with values to bind
- * to query parameters. For instance you can bind values to question
- * marks in the query. Each value in the array corresponds to the
- * question mark in the query that matches the position of the value in the
- * array. You can also bind values using explicit keys, for instance
- * array(":key"=>123) will bind the integer 123 to the key :key in the
- * SQL. This method has no return value.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return array Affected Rows
- */
- public function Execute( $sql, $bindings = array() );
-
- /**
- * Returns the latest insert ID if driver does support this
- * feature.
- *
- * @return integer
- */
- public function GetInsertID();
-
- /**
- * Returns the number of rows affected by the most recent query
- * if the currently selected driver driver supports this feature.
- *
- * @return integer
- */
- public function Affected_Rows();
-
- /**
- * Returns a cursor-like object from the database.
- *
- * @param string $sql SQL query to execute
- * @param array $bindings list of values to bind to SQL snippet
- *
- * @return mixed
- */
- public function GetCursor( $sql, $bindings = array() );
-
- /**
- * Toggles debug mode. In debug mode the driver will print all
- * SQL to the screen together with some information about the
- * results. All SQL code that passes through the driver will be
- * passes on to the screen for inspection.
- * This method has no return value.
- *
- * @param boolean $tf TRUE = debug mode ON
- * @param Logger $customLogger
- *
- * @return void
- */
- public function setDebugMode( $tf, $customLogger );
-
- /**
- * Starts a transaction.
- *
- * @return void
- */
- public function CommitTrans();
-
- /**
- * Commits a transaction.
- *
- * @return void
- */
- public function StartTrans();
-
- /**
- * Rolls back a transaction.
- *
- * @return void
- */
- public function FailTrans();
-
- /**
- * Resets the internal Query Counter.
- *
- * @return self
- */
- public function resetCounter();
-
- /**
- * Returns the number of SQL queries processed.
- *
- * @return integer
- */
- public function getQueryCount();
-}