Continue my post at http://www.yiiframew…pic,2460.0.html about bugs on OCI Active Record.
I'm using CRUD command to generate my code. On insert new record the application throw an error like this:
Property "COciCommandBuilder._connection" is not defined. Source File C:Program FilesZendApache2htdocsyii106frameworkdbschemaociCOciCommandBuilder.php(108) 00096: { 00097: $placeholders[]=':'.$name; 00098: $values[':'.$name]=$column->typecast($value); 00099: } 00100: } 00101: } 00102: 00103: $sql="INSERT INTO {$table->rawName} (".implode(', ',$fields).') VALUES ('.implode(', ',$placeholders).')'; 00104: 00105: if(is_string($table->primaryKey)) 00106: { 00107: $sql.=" RETURNING ".$table->primaryKey." INTO :RETURN_ID"; 00108: $command=$this->_connection->createCommand($sql); 00109: $command->bindParam(':RETURN_ID', $this->returnID, PDO::PARAM_INT, 12); 00110: $table->sequenceName='RETURN_ID'; 00111: } 00112: else 00113: $command=$this->_connection->createCommand($sql); 00114: 00115: foreach($values as $name=>$value) 00116: $command->bindValue($name,$value); 00117: 00118: return $command; 00119: } 00120: }
I'm try to analyze this error and found that $this->_connection property was declared as private property on CDbCommandBuilder class, so it's not exist on COciCommandBuilder because this class extend the CDbCommandBuilder class. As I know if we need to inherit the class properties we need to declare it as protected instead private.
Should I create a ticket for all this OCI bugs?