code: 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}'.");
              }
          }
      }
docs: 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.