Class PdoDialect

Description

The PdoDialect class handles

Located in /inc/PdoQuery.php (line 41)


	
			
Variable Summary
 mixed $dialect
Method Summary
 PdoDialect __construct (string $connection_string)
 void GetFields (string $tablename_string)
 void Quote (mixed $value, [string $value_type = null])
 The ReplaceParameters (string 0, mixed 1)
 void Translate ( $sql_string)
Variables
mixed $dialect (line 49)

Holds the name of the database dialect

  • access: protected
Methods
Constructor __construct (line 60)

Parses the connection string to ascertain the database dialect. Returns true if the dialect is supported and fails if the dialect is not supported. All code to support any given database should be within in an external include.

PdoDialect __construct (string $connection_string)
  • string $connection_string: The full PDO connection string
GetFields (line 76)

Returns the SQL for the current database dialect which will return a two-column resultset containing a list of fields and their associated data types.

void GetFields (string $tablename_string)
  • string $tablename_string: The name of the table we want fields from
Quote (line 114)

Returns $value escaped in an appropriate way for this database dialect.

void Quote (mixed $value, [string $value_type = null])
  • mixed $value: The value to be escaped
  • string $value_type: The type of escaping desired. If blank this will be worked out from gettype($value). The special type of 'identifier' can also be used for escaping of SQL identifiers.
ReplaceParameters (line 167)

Replaces query parameters with appropriately escaped substitutions.

The function takes a variable number of arguments, the first is the SQL string, with replaceable '?' characters (a la DBI). The subsequent parameters being the values to replace into the SQL string.

The values passed to the routine are analyzed for type, and quoted if they appear to need quoting. This can go wrong for (e.g.) NULL or other special SQL values which are not straightforwardly identifiable as needing quoting (or not). In such cases the parameter can be forced to be inserted unquoted by passing it as "array( 'plain' => $param )".

  • return: built query string
The ReplaceParameters (string 0, mixed 1)
  • string 0: The query string with replacable '?' characters.
  • mixed 1: The values to replace into the SQL string.
Translate (line 101)

Translates the given SQL string into a form that will hopefully work for this database dialect. This hook is expected to be used by developers to provide support for differences in database operation by translating the query string in an arbitrary way, such as through a file or database lookup.

The actual translation to other SQL dialects will usually be application-specific, so that any routines called by this will usually be external to this library, or will use resources external to this library.

void Translate ( $sql_string)
  • $sql_string

Documentation generated on Fri, 10 Apr 2009 23:45:53 +1200 by phpDocumentor 1.3.2