framework/db/TableSchema.php
public function fixPrimaryKey($keys)
    {
        $keys = (array) $keys;
        $this->primaryKey = $keys;
        foreach ($this->columns as $column) {
            $column->isPrimaryKey = false;
        }
        foreach ($keys as $key) {
            if (isset($this->columns[$key])) {
                $this->columns[$key]->isPrimaryKey = true;
            } else {
                throw new InvalidArgumentException("Primary key '$key' cannot be found in table '{$this->name}'.");
            }
        }
    }
public function fixPrimaryKey($keys)
    {
        $keys = (array) $keys;
        $this->primaryKey = $keys;
        foreach ($this->columns as $column) {
            $column->isPrimaryKey = false;
        }
        foreach ($keys as $key) {
            if (isset($this->columns[$key])) {
                $this->columns[$key]->isPrimaryKey = true;
            } else {
                throw new InvalidArgumentException("Primary key '$key' cannot be found in table '{$this->name}'.");
            }
        }
    }
public function fixPrimaryKey ( $ keys ) { $ keys = ( array ) $ keys ; $ this -> primaryKey = $ keys ; foreach ( $ this -> columns as $ column ) { $ column -> isPrimaryKey = false ; } foreach ( $ keys as $ key ) { if ( isset ( $ this -> columns [ $ key ] ) ) { $ this -> columns [ $ key ] -> isPrimaryKey = true ; } else { throw new InvalidArgumentException ( "Primary key '$key' cannot be found in table '{$this->name}'." ) ; } } }
Manually specifies the primary key for this table.
@param string|array $keys the primary key (can be composite)
@throws InvalidArgumentException if the specified key cannot be found in the table.
Manually specifies the primary key for this table .