Class: Doctrine_Connection_Pgsql_Exception

Source Location: /Doctrine/Connection/Pgsql/Exception.php

Class Doctrine_Connection_Pgsql_Exception

Class Overview

Doctrine_Connection_Pgsql_Exception

Located in /Doctrine/Connection/Pgsql/Exception.php [line 35]

Exception
   |
   --Doctrine_Exception
      |
      --Doctrine_Connection_Exception
         |
         --Doctrine_Connection_Pgsql_Exception
Author(s): Information Tags:
Version:  $Revision: 1080 $
Link:  www.phpdoctrine.com
Since:  1.0
License:  LGPL

Properties

Methods

[ Top ]
Inherited Properties, Constants, and Methods
Inherited Properties Inherited Methods Inherited Constants

Inherited From Doctrine_Connection_Exception

Doctrine_Connection_Exception::$errorMessages
Doctrine_Connection_Exception::$portableCode

Inherited From Doctrine_Exception

Doctrine_Exception::$_errorMessages

Inherited From Exception (Internal Class)

$code
$file
$line
$message
$string
$trace

Inherited From Doctrine_Connection_Exception

Doctrine_Connection_Exception::errorMessage()
Return a textual error message for a Doctrine error code
Doctrine_Connection_Exception::getPortableCode()
getPortableCode returns portable error code
Doctrine_Connection_Exception::getPortableMessage()
getPortableMessage returns portable error message

Inherited From Doctrine_Exception

Doctrine_Exception::errorMessage()
Return a textual error message for a Doctrine error code

Inherited From Exception (Internal Class)

constructor __construct ( [$message = ], [$code = ] )
getCode ( )
getFile ( )
getLine ( )
getMessage ( )
getTrace ( )
getTraceAsString ( )
__clone ( )
__toString ( )

[ Top ]
Property Summary
static array   $errorRegexps  

[ Top ]
Method Summary
boolean   processErrorInfo()   This method checks if native error code/message can be converted into a portable code and then adds this portable error code to $portableCode field

[ Top ]
Properties
static array   $errorRegexps = array(
'/parser: parse error at or near/i'
=> Doctrine::ERR_SYNTAX,
'/syntax error at/'
=> Doctrine::ERR_SYNTAX,
'/column reference .* is ambiguous/i'
=> Doctrine::ERR_SYNTAX,
'/column .* (of relation .*)?does not exist/i'
=> Doctrine::ERR_NOSUCHFIELD,
'/attribute .* not found|relation .* does not have attribute/i'
=> Doctrine::ERR_NOSUCHFIELD,
'/column .* specified in USING clause does not exist in (left|right) table/i'
=> Doctrine::ERR_NOSUCHFIELD,
'/(relation|sequence|table).*does not exist|class .* not found/i'
=> Doctrine::ERR_NOSUCHTABLE,
'/index .* does not exist/'
=> Doctrine::ERR_NOT_FOUND,
'/relation .* already exists/i'
=> Doctrine::ERR_ALREADY_EXISTS,
'/(divide|division) by zero$/i'
=> Doctrine::ERR_DIVZERO,
'/pg_atoi: error in .*: can\'t parse /i'
=> Doctrine::ERR_INVALID_NUMBER,
'/invalid input syntax for( type)? (integer|numeric)/i'
=> Doctrine::ERR_INVALID_NUMBER,
'/value .* is out of range for type \w*int/i'
=> Doctrine::ERR_INVALID_NUMBER,
'/integer out of range/i'
=> Doctrine::ERR_INVALID_NUMBER,
'/value too long for type character/i'
=> Doctrine::ERR_INVALID,
'/permission denied/'
=> Doctrine::ERR_ACCESS_VIOLATION,
'/violates [\w ]+ constraint/'
=> Doctrine::ERR_CONSTRAINT,
'/referential integrity violation/'
=> Doctrine::ERR_CONSTRAINT,
'/violates not-null constraint/'
=> Doctrine::ERR_CONSTRAINT_NOT_NULL,
'/more expressions than target columns/i'
=> Doctrine::ERR_VALUE_COUNT_ON_ROW,
)
[line 41]
API Tags:
Access:  protected


[ Top ]
Methods
processErrorInfo  [line 97]

  boolean processErrorInfo( $errorInfo  )

This method checks if native error code/message can be converted into a portable code and then adds this portable error code to $portableCode field

the portable error code is added at the end of array

Parameters:
array   $errorInfo:  error info array

API Tags:
Return:  whether or not the error info processing was successfull (the process is successfull if portable error code was found)
See:  Doctrine_Connection::$portableCode
See:  Doctrine::ERR_* constants
Access:  public

Information Tags:
Since:  1.0

[ Top ]