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?