oracle error tabla no encontrada

hola amigos estoy intentando utilizar este maravilloso framework en mi lugar de trabajo pero tengo problema las bases de datos estan en oracle he buscado informacion sobre la conexion y al final me he logrado conectar pero ahora me muestra este error

la tabla tareas no se encontro en la base de datos

utilizo:

la ultima version de yii

oracle 10

apache y ya instale oci8

agradeceria cualquier ayuda o comentario

hola es dificil ayudar con tan poca informacion de tu parte…

como se llama el modelo de tu "tareas", pegalo aqui exactamente como esta en tu codigo…

igualmente, da un printscreen o un poco de informacion de como luce tu tabla en el modelo de datos,

puede ser una letra mayuscula o minuscula que este causando el problema…

igualmente verifica que usando el conector que estes usando, verifica si puedes conectarte directamente desde PHP crudo…incluso si estas en windows, prueba conectandote por el ODBC…la idea es saber que a bajo nivel puedes conectarte y asi descartar algun problema de acceso denegado a esa tabla.

este ejemplo lo cree para mysql y todo perfecto ahora estoy intentado migrar a oracle, ya tengo otras aplicaciones funcionando con oracle y php, este es el error

La tabla "Tareas" definida en la clase active record "Tareas" no se ha podido encontrar en la base de datos.

/usr/local/Zend/apache2/htdocs/webcaricia/yii/yii/framework/db/ar/CActiveRecord.php(2265)

2254 /**

2255 * Constructor.

2256 * @param CActiveRecord $model the model instance

2257 */

2258 public function __construct($model)

2259 {

2260 $this->_model=$model;

2261

2262 $tableName=$model->tableName();

2263

2264 if(($table=$model->getDbConnection()->getSchema()->getTable($tableName))===null)

2265 throw new CDbException(Yii::t(‘yii’,‘The table “{table}” for active record class “{class}” cannot be found in the database.’,

2266 array(’{class}’=>get_class($model),’{table}’=>$tableName)));

2267 if($table->primaryKey===null)

2268 {

2269 $table->primaryKey=$model->primaryKey();

2270 if(is_string($table->primaryKey) && isset($table->columns[$table->primaryKey]))

2271 $table->columns[$table->primaryKey]->isPrimaryKey=true;

2272 else if(is_array($table->primaryKey))

2273 {

2274 foreach($table->primaryKey as $name)

2275 {

2276 if(isset($table->columns[$name]))

2277 $table->columns[$name]->isPrimaryKey=true;

Stack Trace

#0

/usr/local/Zend/apache2/htdocs/webcaricia/yii/yii/framework/db/ar/CActiveRecord.php(379): CActiveRecordMetaData->__construct(Tareas)

#1

/usr/local/Zend/apache2/htdocs/webcaricia/blog/protected/models/Tareas.php(10): CActiveRecord::model("Tareas")

05 class Tareas extends CActiveRecord

06 {

07

08 public static function model($className=CLASS)

09 {

10 return parent::model($className) ;

11

12 }

13 public function rules(){

14 return array(

15 array(‘NOMBRE,DESCRIPCION’,‘required’)

el modelo es este

<?php

/**

*/

class Tareas extends CActiveRecord

{

public static function model(&#036;className=__CLASS__)


{


return parent::model(&#036;className)	;





}


public function rules(){


	return array(


		array('nombre,descripcion','required')


		);


}

}

?>

gracias por tu ayuda

por el lado del modelo esta bien.

ahora, verifica que en ORACLE, la "tabla" tiene el mismo nombre: "mayusculas/minusculas", hay controladores sensibles a esto, (mal llamada "tabla", el verdadero nombre tecnico es: "relación"). y adicionalmente verifica permisos.

modifique el archivo CActiveRecord.phpy para que pusiera el nombre de la tabla en mayusculas y al parecer funciono ahora me creo q tengo que hacer los mismo pero con los campos, tienes idea de que podria estar haciendo mal , en oracle creo que las tablas siempre estan en mayusculas e igual los campos

public function __construct(&#036;model)


{


	&#036;this-&gt;_model=&#036;model;





	&#036;tableName=&#036;model-&gt;tableName();


	[b]  &#036;tableName= strtoupper( &#036;tableName);[/b]


	  


	if((&#036;table=&#036;model-&gt;getDbConnection()-&gt;getSchema()-&gt;getTable(&#036;tableName))===null)


		throw new CDbException(Yii::t('yii','The table &quot;{table}&quot; for active record class &quot;{class}&quot; cannot be found in the database.',


			array('{class}'=&gt;get_class(&#036;model),'{table}'=&gt;&#036;tableName)));


	if(&#036;table-&gt;primaryKey===null)


	{


		&#036;table-&gt;primaryKey=&#036;model-&gt;primaryKey();


		if(is_string(&#036;table-&gt;primaryKey) &amp;&amp; isset(&#036;table-&gt;columns[&#036;table-&gt;primaryKey]))


			&#036;table-&gt;columns[&#036;table-&gt;primaryKey]-&gt;isPrimaryKey=true;


		else if(is_array(&#036;table-&gt;primaryKey))


		{


			foreach(&#036;table-&gt;primaryKey as &#036;name)


			{


				if(isset(&#036;table-&gt;columns[&#036;name]))


					&#036;table-&gt;columns[&#036;name]-&gt;isPrimaryKey=true;


			}


		}


	}

que bueno que se solucionó.

como nunca tengo ese problema nunca lo he profundizado, pero asumo que en la clase CActiveRecord debe haber algun metodo para sobreescribir el nombre de la tabla entregado, es decir algun tipo de "override", si lo consigues avisa por aqui.