diff options
| author | wei <> | 2006-05-16 07:42:43 +0000 | 
|---|---|---|
| committer | wei <> | 2006-05-16 07:42:43 +0000 | 
| commit | 5a73a2d3140db38cba43bf34f90831e0e26a8ffd (patch) | |
| tree | 132061b9e3f3dc002d1d07bc04aa92a95ae3a46b /framework/DataAccess/adodb/drivers/adodb-mysql.inc.php | |
| parent | 8848464bd3534a9f831a02c022c94c1d42a4f6e2 (diff) | |
Remove adodb from DataAccess directory.
Diffstat (limited to 'framework/DataAccess/adodb/drivers/adodb-mysql.inc.php')
| -rw-r--r-- | framework/DataAccess/adodb/drivers/adodb-mysql.inc.php | 775 | 
1 files changed, 0 insertions, 775 deletions
| diff --git a/framework/DataAccess/adodb/drivers/adodb-mysql.inc.php b/framework/DataAccess/adodb/drivers/adodb-mysql.inc.php deleted file mode 100644 index 34e9c17e..00000000 --- a/framework/DataAccess/adodb/drivers/adodb-mysql.inc.php +++ /dev/null @@ -1,775 +0,0 @@ -<?php -/* -V4.72 21 Feb 2006  (c) 2000-2006 John Lim (jlim@natsoft.com.my). All rights reserved. -  Released under both BSD license and Lesser GPL library license.  -  Whenever there is any discrepancy between the two licenses,  -  the BSD license will take precedence. -  Set tabs to 8. -   -  MySQL code that does not support transactions. Use mysqlt if you need transactions. -  Requires mysql client. Works on Windows and Unix. -   - 28 Feb 2001: MetaColumns bug fix - suggested by  Freek Dijkstra (phpeverywhere@macfreek.com) -*/  - -// security - hide paths -if (!defined('ADODB_DIR')) die(); - -if (! defined("_ADODB_MYSQL_LAYER")) { - define("_ADODB_MYSQL_LAYER", 1 ); - -class ADODB_mysql extends ADOConnection { -	var $databaseType = 'mysql'; -	var $dataProvider = 'mysql'; -	var $hasInsertID = true; -	var $hasAffectedRows = true;	 -	var $metaTablesSQL = "SHOW TABLES";	 -	var $metaColumnsSQL = "SHOW COLUMNS FROM %s"; -	var $fmtTimeStamp = "'Y-m-d H:i:s'"; -	var $hasLimit = true; -	var $hasMoveFirst = true; -	var $hasGenID = true; -	var $isoDates = true; // accepts dates in ISO format -	var $sysDate = 'CURDATE()'; -	var $sysTimeStamp = 'NOW()'; -	var $hasTransactions = false; -	var $forceNewConnect = false; -	var $poorAffectedRows = true; -	var $clientFlags = 0; -	var $substr = "substring"; -	var $nameQuote = '`';		/// string to use to quote identifiers and names -	 -	function ADODB_mysql()  -	{			 -		if (defined('ADODB_EXTENSION')) $this->rsPrefix .= 'ext_'; -	} -	 -	function ServerInfo() -	{ -		$arr['description'] = ADOConnection::GetOne("select version()"); -		$arr['version'] = ADOConnection::_findvers($arr['description']); -		return $arr; -	} -	 -	function IfNull( $field, $ifNull )  -	{ -		return " IFNULL($field, $ifNull) "; // if MySQL -	} -	 -	 -	function &MetaTables($ttype=false,$showSchema=false,$mask=false)  -	{	 -		$save = $this->metaTablesSQL; -		if ($showSchema && is_string($showSchema)) { -			$this->metaTablesSQL .= " from $showSchema"; -		} -		 -		if ($mask) { -			$mask = $this->qstr($mask); -			$this->metaTablesSQL .= " like $mask"; -		} -		$ret =& ADOConnection::MetaTables($ttype,$showSchema); -		 -		$this->metaTablesSQL = $save; -		return $ret; -	} -	 -	 -	function &MetaIndexes ($table, $primary = FALSE, $owner=false) -	{ -        // save old fetch mode -        global $ADODB_FETCH_MODE; -         -		$false = false; -        $save = $ADODB_FETCH_MODE; -        $ADODB_FETCH_MODE = ADODB_FETCH_NUM; -        if ($this->fetchMode !== FALSE) { -               $savem = $this->SetFetchMode(FALSE); -        } -         -        // get index details -        $rs = $this->Execute(sprintf('SHOW INDEX FROM %s',$table)); -         -        // restore fetchmode -        if (isset($savem)) { -                $this->SetFetchMode($savem); -        } -        $ADODB_FETCH_MODE = $save; -         -        if (!is_object($rs)) { -                return $false; -        } -         -        $indexes = array (); -         -        // parse index data into array -        while ($row = $rs->FetchRow()) { -                if ($primary == FALSE AND $row[2] == 'PRIMARY') { -                        continue; -                } -                 -                if (!isset($indexes[$row[2]])) { -                        $indexes[$row[2]] = array( -                                'unique' => ($row[1] == 0), -                                'columns' => array() -                        ); -                } -                 -                $indexes[$row[2]]['columns'][$row[3] - 1] = $row[4]; -        } -         -        // sort columns by order in the index -        foreach ( array_keys ($indexes) as $index ) -        { -                ksort ($indexes[$index]['columns']); -        } -         -        return $indexes; -	} - -	 -	// if magic quotes disabled, use mysql_real_escape_string() -	function qstr($s,$magic_quotes=false) -	{ -		if (!$magic_quotes) { -		 -			if (ADODB_PHPVER >= 0x4300) { -				if (is_resource($this->_connectionID)) -					return "'".mysql_real_escape_string($s,$this->_connectionID)."'"; -			} -			if ($this->replaceQuote[0] == '\\'){ -				$s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s); -			} -			return  "'".str_replace("'",$this->replaceQuote,$s)."'";  -		} -		 -		// undo magic quotes for " -		$s = str_replace('\\"','"',$s); -		return "'$s'"; -	} -	 -	function _insertid() -	{ -		return ADOConnection::GetOne('SELECT LAST_INSERT_ID()'); -		//return mysql_insert_id($this->_connectionID); -	} -	 -	function GetOne($sql,$inputarr=false) -	{ -		if (strncasecmp($sql,'sele',4) == 0) { -			$rs =& $this->SelectLimit($sql,1,-1,$inputarr); -			if ($rs) { -				$rs->Close(); -				if ($rs->EOF) return false; -				return reset($rs->fields); -			} -		} else { -			return ADOConnection::GetOne($sql,$inputarr); -		} -		return false; -	} -	 -	function BeginTrans() -	{ -		if ($this->debug) ADOConnection::outp("Transactions not supported in 'mysql' driver. Use 'mysqlt' or 'mysqli' driver"); -	} -	 -	function _affectedrows() -	{ -			return mysql_affected_rows($this->_connectionID); -	} -   - 	// See http://www.mysql.com/doc/M/i/Miscellaneous_functions.html -	// Reference on Last_Insert_ID on the recommended way to simulate sequences - 	var $_genIDSQL = "update %s set id=LAST_INSERT_ID(id+1);"; -	var $_genSeqSQL = "create table %s (id int not null)"; -	var $_genSeq2SQL = "insert into %s values (%s)"; -	var $_dropSeqSQL = "drop table %s"; -	 -	function CreateSequence($seqname='adodbseq',$startID=1) -	{ -		if (empty($this->_genSeqSQL)) return false; -		$u = strtoupper($seqname); -		 -		$ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname)); -		if (!$ok) return false; -		return $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); -	} -	 - -	function GenID($seqname='adodbseq',$startID=1) -	{ -		// post-nuke sets hasGenID to false -		if (!$this->hasGenID) return false; -		 -		$savelog = $this->_logsql; -		$this->_logsql = false; -		$getnext = sprintf($this->_genIDSQL,$seqname); -		$holdtransOK = $this->_transOK; // save the current status -		$rs = @$this->Execute($getnext); -		if (!$rs) { -			if ($holdtransOK) $this->_transOK = true; //if the status was ok before reset -			$u = strtoupper($seqname); -			$this->Execute(sprintf($this->_genSeqSQL,$seqname)); -			$this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1)); -			$rs = $this->Execute($getnext); -		} -		$this->genID = mysql_insert_id($this->_connectionID); -		 -		if ($rs) $rs->Close(); -		 -		$this->_logsql = $savelog; -		return $this->genID; -	} -	 -  	function &MetaDatabases() -	{ -		$qid = mysql_list_dbs($this->_connectionID); -		$arr = array(); -		$i = 0; -		$max = mysql_num_rows($qid); -		while ($i < $max) { -			$db = mysql_tablename($qid,$i); -			if ($db != 'mysql') $arr[] = $db; -			$i += 1; -		} -		return $arr; -	} -	 -		 -	// Format date column in sql string given an input format that understands Y M D -	function SQLDate($fmt, $col=false) -	{	 -		if (!$col) $col = $this->sysTimeStamp; -		$s = 'DATE_FORMAT('.$col.",'"; -		$concat = false; -		$len = strlen($fmt); -		for ($i=0; $i < $len; $i++) { -			$ch = $fmt[$i]; -			switch($ch) { -				 -			default: -				if ($ch == '\\') { -					$i++; -					$ch = substr($fmt,$i,1); -				} -				/** FALL THROUGH */ -			case '-': -			case '/': -				$s .= $ch; -				break; -				 -			case 'Y': -			case 'y': -				$s .= '%Y'; -				break; -			case 'M': -				$s .= '%b'; -				break; -				 -			case 'm': -				$s .= '%m'; -				break; -			case 'D': -			case 'd': -				$s .= '%d'; -				break; -			 -			case 'Q': -			case 'q': -				$s .= "'),Quarter($col)"; -				 -				if ($len > $i+1) $s .= ",DATE_FORMAT($col,'"; -				else $s .= ",('"; -				$concat = true; -				break; -			 -			case 'H':  -				$s .= '%H'; -				break; -				 -			case 'h': -				$s .= '%I'; -				break; -				 -			case 'i': -				$s .= '%i'; -				break; -				 -			case 's': -				$s .= '%s'; -				break; -				 -			case 'a': -			case 'A': -				$s .= '%p'; -				break; -				 -			case 'w': -				$s .= '%w'; -				break; -				 -			 case 'W': -				$s .= '%U'; -				break; -				 -			case 'l': -				$s .= '%W'; -				break; -			} -		} -		$s.="')"; -		if ($concat) $s = "CONCAT($s)"; -		return $s; -	} -	 - -	// returns concatenated string -	// much easier to run "mysqld --ansi" or "mysqld --sql-mode=PIPES_AS_CONCAT" and use || operator -	function Concat() -	{ -		$s = ""; -		$arr = func_get_args(); -		 -		// suggestion by andrew005@mnogo.ru -		$s = implode(',',$arr);  -		if (strlen($s) > 0) return "CONCAT($s)"; -		else return ''; -	} -	 -	function OffsetDate($dayFraction,$date=false) -	{		 -		if (!$date) $date = $this->sysDate; -		$fraction = $dayFraction * 24 * 3600; -		return "from_unixtime(unix_timestamp($date)+$fraction)"; -	} -	 -	// returns true or false -	function _connect($argHostname, $argUsername, $argPassword, $argDatabasename) -	{ -		if (!empty($this->port)) $argHostname .= ":".$this->port; -		 -		if (ADODB_PHPVER >= 0x4300) -			$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword, -												$this->forceNewConnect,$this->clientFlags); -		else if (ADODB_PHPVER >= 0x4200) -			$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword, -												$this->forceNewConnect); -		else -			$this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword); -	 -		if ($this->_connectionID === false) return false; -		if ($argDatabasename) return $this->SelectDB($argDatabasename); -		return true;	 -	} -	 -	// returns true or false -	function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename) -	{ -		if (!empty($this->port)) $argHostname .= ":".$this->port; -		 -		if (ADODB_PHPVER >= 0x4300) -			$this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword,$this->clientFlags); -		else -			$this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword); -		if ($this->_connectionID === false) return false; -		if ($this->autoRollback) $this->RollbackTrans(); -		if ($argDatabasename) return $this->SelectDB($argDatabasename); -		return true;	 -	} -	 -	function _nconnect($argHostname, $argUsername, $argPassword, $argDatabasename) -	{ -		$this->forceNewConnect = true; -		return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename); -	} -	 - 	function &MetaColumns($table)  -	{ -		$this->_findschema($table,$schema); -		if ($schema) { -			$dbName = $this->database; -			$this->SelectDB($schema); -		} -		global $ADODB_FETCH_MODE; -		$save = $ADODB_FETCH_MODE; -		$ADODB_FETCH_MODE = ADODB_FETCH_NUM; -		 -		if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false); -		$rs = $this->Execute(sprintf($this->metaColumnsSQL,$table)); -		 -		if ($schema) { -			$this->SelectDB($dbName); -		} -		 -		if (isset($savem)) $this->SetFetchMode($savem); -		$ADODB_FETCH_MODE = $save; -		if (!is_object($rs)) { -			$false = false; -			return $false; -		} -			 -		$retarr = array(); -		while (!$rs->EOF){ -			$fld = new ADOFieldObject(); -			$fld->name = $rs->fields[0]; -			$type = $rs->fields[1]; -			 -			// split type into type(length): -			$fld->scale = null; -			if (preg_match("/^(.+)\((\d+),(\d+)/", $type, $query_array)) { -				$fld->type = $query_array[1]; -				$fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; -				$fld->scale = is_numeric($query_array[3]) ? $query_array[3] : -1; -			} elseif (preg_match("/^(.+)\((\d+)/", $type, $query_array)) { -				$fld->type = $query_array[1]; -				$fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1; -			} elseif (preg_match("/^(enum)\((.*)\)$/i", $type, $query_array)) { -				$fld->type = $query_array[1]; -				$arr = explode(",",$query_array[2]); -				$fld->enums = $arr; -				$zlen = max(array_map("strlen",$arr)) - 2; // PHP >= 4.0.6 -				$fld->max_length = ($zlen > 0) ? $zlen : 1; -			} else { -				$fld->type = $type; -				$fld->max_length = -1; -			} -			$fld->not_null = ($rs->fields[2] != 'YES'); -			$fld->primary_key = ($rs->fields[3] == 'PRI'); -			$fld->auto_increment = (strpos($rs->fields[5], 'auto_increment') !== false); -			$fld->binary = (strpos($type,'blob') !== false); -			$fld->unsigned = (strpos($type,'unsigned') !== false); -				 -			if (!$fld->binary) { -				$d = $rs->fields[4]; -				if ($d != '' && $d != 'NULL') { -					$fld->has_default = true; -					$fld->default_value = $d; -				} else { -					$fld->has_default = false; -				} -			} -			 -			if ($save == ADODB_FETCH_NUM) { -				$retarr[] = $fld; -			} else { -				$retarr[strtoupper($fld->name)] = $fld; -			} -				$rs->MoveNext(); -			} -		 -			$rs->Close(); -			return $retarr;	 -	} -		 -	// returns true or false -	function SelectDB($dbName)  -	{ -		$this->database = $dbName; -		$this->databaseName = $dbName; # obsolete, retained for compat with older adodb versions -		if ($this->_connectionID) { -			return @mysql_select_db($dbName,$this->_connectionID);		 -		} -		else return false;	 -	} -	 -	// parameters use PostgreSQL convention, not MySQL -	function &SelectLimit($sql,$nrows=-1,$offset=-1,$inputarr=false,$secs=0) -	{ -		$offsetStr =($offset>=0) ? ((integer)$offset)."," : ''; -		// jason judge, see http://phplens.com/lens/lensforum/msgs.php?id=9220 -		if ($nrows < 0) $nrows = '18446744073709551615';  -		 -		if ($secs) -			$rs =& $this->CacheExecute($secs,$sql." LIMIT $offsetStr".((integer)$nrows),$inputarr); -		else -			$rs =& $this->Execute($sql." LIMIT $offsetStr".((integer)$nrows),$inputarr); -		return $rs; -	} -	 -	// returns queryID or false -	function _query($sql,$inputarr) -	{ -	//global $ADODB_COUNTRECS; -		//if($ADODB_COUNTRECS)  -		return mysql_query($sql,$this->_connectionID); -		//else return @mysql_unbuffered_query($sql,$this->_connectionID); // requires PHP >= 4.0.6 -	} - -	/*	Returns: the last error message from previous database operation	*/	 -	function ErrorMsg()  -	{ -	 -		if ($this->_logsql) return $this->_errorMsg; -		if (empty($this->_connectionID)) $this->_errorMsg = @mysql_error(); -		else $this->_errorMsg = @mysql_error($this->_connectionID); -		return $this->_errorMsg; -	} -	 -	/*	Returns: the last error number from previous database operation	*/	 -	function ErrorNo()  -	{ -		if ($this->_logsql) return $this->_errorCode; -		if (empty($this->_connectionID))  return @mysql_errno(); -		else return @mysql_errno($this->_connectionID); -	} -	 -	// returns true or false -	function _close() -	{ -		@mysql_close($this->_connectionID); -		$this->_connectionID = false; -	} - -	 -	/* -	* Maximum size of C field -	*/ -	function CharMax() -	{ -		return 255;  -	} -	 -	/* -	* Maximum size of X field -	*/ -	function TextMax() -	{ -		return 4294967295;  -	} -	 -	// "Innox - Juan Carlos Gonzalez" <jgonzalez#innox.com.mx> -	function MetaForeignKeys( $table, $owner = FALSE, $upper = FALSE, $associative = FALSE ) -     { -         if ( !empty($owner) ) { -            $table = "$owner.$table"; -         } -         $a_create_table = $this->getRow(sprintf('SHOW CREATE TABLE %s', $table)); -		 if ($associative) $create_sql = $a_create_table["Create Table"]; -         else $create_sql  = $a_create_table[1]; - -         $matches = array(); - -         if (!preg_match_all("/FOREIGN KEY \(`(.*?)`\) REFERENCES `(.*?)` \(`(.*?)`\)/", $create_sql, $matches)) return false; -	     $foreign_keys = array();	 	  -         $num_keys = count($matches[0]); -         for ( $i = 0;  $i < $num_keys;  $i ++ ) { -             $my_field  = explode('`, `', $matches[1][$i]); -             $ref_table = $matches[2][$i]; -             $ref_field = explode('`, `', $matches[3][$i]); - -             if ( $upper ) { -                 $ref_table = strtoupper($ref_table); -             } - -             $foreign_keys[$ref_table] = array(); -             $num_fields = count($my_field); -             for ( $j = 0;  $j < $num_fields;  $j ++ ) { -                 if ( $associative ) { -                     $foreign_keys[$ref_table][$ref_field[$j]] = $my_field[$j]; -                 } else { -                     $foreign_keys[$ref_table][] = "{$my_field[$j]}={$ref_field[$j]}"; -                 } -             } -         } -          -         return  $foreign_keys; -     } -	  -	 -} -	 -/*-------------------------------------------------------------------------------------- -	 Class Name: Recordset ---------------------------------------------------------------------------------------*/ - - -class ADORecordSet_mysql extends ADORecordSet{	 -	 -	var $databaseType = "mysql"; -	var $canSeek = true; -	 -	function ADORecordSet_mysql($queryID,$mode=false)  -	{ -		if ($mode === false) {  -			global $ADODB_FETCH_MODE; -			$mode = $ADODB_FETCH_MODE; -		} -		switch ($mode) -		{ -		case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; -		case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; -		case ADODB_FETCH_DEFAULT: -		case ADODB_FETCH_BOTH: -		default: -			$this->fetchMode = MYSQL_BOTH; break; -		} -		$this->adodbFetchMode = $mode; -		$this->ADORecordSet($queryID);	 -	} -	 -	function _initrs() -	{ -	//GLOBAL $ADODB_COUNTRECS; -	//	$this->_numOfRows = ($ADODB_COUNTRECS) ? @mysql_num_rows($this->_queryID):-1; -		$this->_numOfRows = @mysql_num_rows($this->_queryID); -		$this->_numOfFields = @mysql_num_fields($this->_queryID); -	} -	 -	function &FetchField($fieldOffset = -1)  -	{	 -		if ($fieldOffset != -1) { -			$o = @mysql_fetch_field($this->_queryID, $fieldOffset); -			$f = @mysql_field_flags($this->_queryID,$fieldOffset); -			$o->max_length = @mysql_field_len($this->_queryID,$fieldOffset); // suggested by: Jim Nicholson (jnich@att.com) -			//$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable -			$o->binary = (strpos($f,'binary')!== false); -		} -		else if ($fieldOffset == -1) {	/*	The $fieldOffset argument is not provided thus its -1 	*/ -			$o = @mysql_fetch_field($this->_queryID); -		$o->max_length = @mysql_field_len($this->_queryID); // suggested by: Jim Nicholson (jnich@att.com) -		//$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable -		} -			 -		return $o; -	} - -	function &GetRowAssoc($upper=true) -	{ -		if ($this->fetchMode == MYSQL_ASSOC && !$upper) return $this->fields; -		$row =& ADORecordSet::GetRowAssoc($upper); -		return $row; -	} -	 -	/* Use associative array to get fields array */ -	function Fields($colname) -	{	 -		// added @ by "Michael William Miller" <mille562@pilot.msu.edu> -		if ($this->fetchMode != MYSQL_NUM) return @$this->fields[$colname]; -		 -		if (!$this->bind) { -			$this->bind = array(); -			for ($i=0; $i < $this->_numOfFields; $i++) { -				$o = $this->FetchField($i); -				$this->bind[strtoupper($o->name)] = $i; -			} -		} -		 return $this->fields[$this->bind[strtoupper($colname)]]; -	} -	 -	function _seek($row) -	{ -		if ($this->_numOfRows == 0) return false; -		return @mysql_data_seek($this->_queryID,$row); -	} -	 -	function MoveNext() -	{ -		//return adodb_movenext($this); -		//if (defined('ADODB_EXTENSION')) return adodb_movenext($this); -		if (@$this->fields = mysql_fetch_array($this->_queryID,$this->fetchMode)) { -			$this->_currentRow += 1; -			return true; -		} -		if (!$this->EOF) { -			$this->_currentRow += 1; -			$this->EOF = true; -		} -		return false; -	} -	 -	function _fetch() -	{ -		$this->fields =  @mysql_fetch_array($this->_queryID,$this->fetchMode); -		return is_array($this->fields); -	} -	 -	function _close() { -		@mysql_free_result($this->_queryID);	 -		$this->_queryID = false;	 -	} -	 -	function MetaType($t,$len=-1,$fieldobj=false) -	{ -		if (is_object($t)) { -			$fieldobj = $t; -			$t = $fieldobj->type; -			$len = $fieldobj->max_length; -		} -		 -		$len = -1; // mysql max_length is not accurate -		switch (strtoupper($t)) { -		case 'STRING':  -		case 'CHAR': -		case 'VARCHAR':  -		case 'TINYBLOB':  -		case 'TINYTEXT':  -		case 'ENUM':  -		case 'SET':  -			if ($len <= $this->blobSize) return 'C'; -			 -		case 'TEXT': -		case 'LONGTEXT':  -		case 'MEDIUMTEXT': -			return 'X'; -			 -		// php_mysql extension always returns 'blob' even if 'text' -		// so we have to check whether binary... -		case 'IMAGE': -		case 'LONGBLOB':  -		case 'BLOB': -		case 'MEDIUMBLOB': -			return !empty($fieldobj->binary) ? 'B' : 'X'; -			 -		case 'YEAR': -		case 'DATE': return 'D'; -		 -		case 'TIME': -		case 'DATETIME': -		case 'TIMESTAMP': return 'T'; -		 -		case 'INT':  -		case 'INTEGER': -		case 'BIGINT': -		case 'TINYINT': -		case 'MEDIUMINT': -		case 'SMALLINT':  -			 -			if (!empty($fieldobj->primary_key)) return 'R'; -			else return 'I'; -		 -		default: return 'N'; -		} -	} - -} - -class ADORecordSet_ext_mysql extends ADORecordSet_mysql {	 -	function ADORecordSet_ext_mysql($queryID,$mode=false)  -	{ -		if ($mode === false) {  -			global $ADODB_FETCH_MODE; -			$mode = $ADODB_FETCH_MODE; -		} -		switch ($mode) -		{ -		case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break; -		case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break; -		case ADODB_FETCH_DEFAULT: -		case ADODB_FETCH_BOTH: -		default: -		$this->fetchMode = MYSQL_BOTH; break; -		} -		$this->adodbFetchMode = $mode; -		$this->ADORecordSet($queryID); -	} -	 -	function MoveNext() -	{ -		return @adodb_movenext($this); -	} -} - - -} -?>
\ No newline at end of file | 
