00001 <?php 00002 /* 00003 * $Id: ODBCAdapter.php,v 1.3 2005/10/17 19:03:51 dlawson_mi Exp $ 00004 * 00005 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00006 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00007 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 00008 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 00009 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00010 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00011 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 00012 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 00013 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 00014 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 00015 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00016 * 00017 * This software consists of voluntary contributions made by many individuals 00018 * and is licensed under the LGPL. For more information please see 00019 * <http://creole.phpdb.org>. 00020 */ 00021 00029 class ODBCAdapter 00030 { 00038 public function preservesColumnCase() 00039 { 00040 return true; 00041 } 00042 00050 public function emulatePrepareStmt() 00051 { 00052 return false; 00053 } 00054 00060 public function hasLimitOffset() 00061 { 00062 return false; 00063 } 00064 00068 public function applyLimit(&$sql, $offset, $limit) 00069 { 00070 } 00071 00075 public function escape($str) 00076 { 00077 // use this instead of magic_quotes_sybase + addslashes(), 00078 // just in case multiple RDBMS being used at the same time 00079 return str_replace("'", "''", $str); 00080 } 00081 00087 public function createResultSet($conn, $odbcresult, $fetchmode) 00088 { 00089 require_once 'creole/drivers/odbc/ODBCResultSet.php'; 00090 return new ODBCResultSet($conn, $odbcresult, $fetchmode); 00091 } 00092 00098 public function getIdGenerator($conn) 00099 { 00100 require_once 'creole/drivers/odbc/ODBCIdGenerator.php'; 00101 return new ODBCIdGenerator($conn); 00102 } 00103 00109 public function supportsTransactions() 00110 { 00111 return true; 00112 } 00113 } 00114 00115 ?>