isao otika Mon Jun 10 08:46:02 -0400 2013

Subject: PHP activerecord exception : Base table or view not found

I am trying out php active record, it's a great ORM, however I am at a standstill.

I have looked around google, blogs, phpactiverecord documentation as well as statckoverflow for days but have not been able to come across a suitable solution to this problem.

I am able to carry out the basic CRUD (insert,fetch, modify and delete) operations however as soon as i validate an object property using a static $validates_uniqueness_of filter, i get

Fatal error: Uncaught exception 'ActiveRecord\DatabaseException'

With message

exception 'PDOException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'test_ar.models' doesn't exist' in C:\wamp\www\test_AR\AR\lib\Connection.php on line 325

Here is the code i used in full.

$path_to_AR = "AR/";
include $path_to_AR . "activerecord.php";
ActiveRecord\Config::initialize(function($cfg) {
'development' => 'mysql://root:asdf@localhost/test_ar',
'test' => 'mysql://username:password@localhost/test_database_name',
'production' => 'mysql://username:password@localhost/production_database_name'

class user extends ActiveRecord\Model {

static $validates_presence_of = array(array('username', 'message' => 'Please supply a username')); //this works just fine
static $validates_uniqueness_of = array(array('username'));//this line causes the PDO exception

$user = new user();

$user::create(array('username'=>'mike')); //cannot even reach this line because of the exeption
References i have tried/looked at (though i don't really understand what's going on there)


as well as many others.

Platform and php version

I am using php 5.3.4 and using nightly build (May 8 2013) I have almost failed to get my head around this. Please advise on how to correct this.

Megan McVey Thu Jul 18 19:00:52 -0400 2013

According to the comments in you need to be using PHP 5.3.9+

If you are absolutely stuck with pre-5.3.9 then the dirty hack referenced in should fix you up.