/** * (non-PHPdoc) * @see DBField::requireField() */ public function requireField() { $charset = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'charset'); $collation = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'collation'); $parts = ['datatype' => 'mediumtext', 'character set' => $charset, 'collate' => $collation, 'default' => $this->defaultVal, 'arrayValue' => $this->arrayValue]; $values = ['type' => 'text', 'parts' => $parts]; DB::require_field($this->tableName, $this->name, $values); }
/** * (non-PHPdoc) * @see DBField::requireField() */ public function requireField() { $charset = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'charset'); $collation = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'collation'); $parts = array('datatype' => 'varchar', 'precision' => $this->size, 'character set' => $charset, 'collate' => $collation, 'arrayValue' => $this->arrayValue); $values = array('type' => 'varchar', 'parts' => $parts); DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { // @todo: Remove mysql-centric logic from this $charset = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'charset'); $collation = Config::inst()->get('SilverStripe\\ORM\\Connect\\MySQLDatabase', 'collation'); $values = array('type' => 'set', 'parts' => array('enums' => $this->enum, 'character set' => $charset, 'collate' => $collation, 'default' => $this->default, 'table' => $this->tableName, 'arrayValue' => $this->arrayValue)); DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { // HACK: MSSQL does not support double so we're using float instead // @todo This should go into MSSQLDatabase ideally somehow if (DB::get_conn() instanceof MySQLDatabase) { DB::require_field($this->tableName, $this->name, "double"); } else { DB::require_field($this->tableName, $this->name, "float"); } }
public function requireField() { $parts = array('datatype' => 'float', 'null' => 'not null', 'default' => $this->defaultVal, 'arrayValue' => $this->arrayValue); $values = array('type' => 'float', 'parts' => $parts); DB::require_field($this->tableName, $this->name, $values); }
/** * @return void */ public function requireField() { $parts = array('datatype' => 'enum', 'enums' => $this->getEnumObsolete(), 'character set' => 'utf8', 'collate' => 'utf8_general_ci', 'default' => $this->getDefault(), 'table' => $this->getTable(), 'arrayValue' => $this->arrayValue); $values = array('type' => 'enum', 'parts' => $parts); DB::require_field($this->getTable(), $this->getName(), $values); }
public function requireField() { $parts = array('datatype' => 'time', 'arrayValue' => $this->arrayValue); $values = array('type' => 'time', 'parts' => $parts); DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { $parts = array('datatype' => 'tinyint', 'precision' => 1, 'sign' => 'unsigned', 'null' => 'not null', 'default' => $this->defaultVal, 'arrayValue' => $this->arrayValue); $values = array('type' => 'boolean', 'parts' => $parts); DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { $parts = ['datatype' => 'int', 'precision' => 11, 'null' => 'not null', 'default' => $this->defaultVal, 'arrayValue' => $this->arrayValue]; $values = ['type' => 'int', 'parts' => $parts]; DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { $parts = array('datatype' => 'decimal', 'precision' => "{$this->wholeSize},{$this->decimalSize}", 'default' => $this->defaultValue, 'arrayValue' => $this->arrayValue); $values = array('type' => 'decimal', 'parts' => $parts); DB::require_field($this->tableName, $this->name, $values); }
public function requireField() { $spec = DB::get_schema()->IdColumn(false, $this->getAutoIncrement()); DB::require_field($this->getTable(), $this->getName(), $spec); }
public function requireField() { foreach ($this->compositeDatabaseFields() as $field => $spec) { $key = $this->getName() . $field; DB::require_field($this->tableName, $key, $spec); } }