public function create() { if (!$this->db->tableExists($this->tableName)) { $table = $this->getTableSkeleton(); $table = $this->setUpTable($table); $this->db->createTable($table); return true; } return false; }
/** * Creates the table. * * @param string $name the table name */ private function createTable($name) { $table = new Table($name); $table->addField(new Field('idx', Field::TYPE_INT, '', false, true)); $table->addField(new Field('id', new Type(Field::TYPE_VARCHAR, 32), '', false, false)); $table->addField(new Field('role', Field::TYPE_TEXT, '', false, false)); $table->setPrimaryKey(new PrimaryKey($name, array('idx'))); $this->db->createTable($table); }
/** * Creates the table. */ private function createTable() { $table = new Table($this->table); $table->addField(new Field('role', new Type(Field::TYPE_VARCHAR, 255), '', false, false)); $table->addField(new Field('page', new Type(Field::TYPE_VARCHAR, 255), '', false, false)); $table->addField(new Field('task', new Type(Field::TYPE_VARCHAR, 255), '', false, false)); $table->setPrimaryKey(new PrimaryKey($this->table, array('role', 'page', 'task'))); $this->db->createTable($table); }
/** * Creates the table. * * @param string $name the table name */ private function createTable() { $name = $this->table; $table = new Table($name, ''); $table->addField(new Field('idx', new Type(Field::TYPE_VARCHAR, 255), '', false, false)); $table->addField(new Field('data', new Type(Field::TYPE_BLOB), '', false, false)); if ($this->useTimestamps) { $table->addField(new Field('ts', new Type(Field::TYPE_INT, 10), '', false, false)); } $table->setPrimaryKey(new PrimaryKey($name, array('idx'))); $this->db->createTable($table); }
/** * Creates the table. * * @param string $name the table name */ private function createTable($name) { $table = new Table($name); $table->addField(new Field('id', new Type(Field::TYPE_VARCHAR, 32), '', false, false)); $table->addField(new Field('username', new Type(Field::TYPE_VARCHAR, 255), null, true, false)); $table->addField(new Field('fullName', Field::TYPE_TEXT, null, true, false)); $table->addField(new Field('email', new Type(Field::TYPE_VARCHAR, 255), null, true, false)); $table->addField(new Field('birthdate', Field::TYPE_DATE, null, true, false)); $table->addField(new Field('gender', new Type(Field::TYPE_VARCHAR, 255), '', true, false)); $table->addField(new Field('timezoneOffset', new Type(Field::TYPE_SMALLINT, 4), 0, false, false)); $table->addField(new Field('locale', new Type(Field::TYPE_VARCHAR, 10), 'en-US', false, false)); $table->addField(new Field('lastLogin', new Type(Field::TYPE_INT, 12), -1, false, false)); $table->addField(new Field('secret', Field::TYPE_TEXT, '', false, false)); $table->setPrimaryKey(new PrimaryKey($name, array('id'))); $table->addIndex(new Index('username', $name, true, array('username'))); $table->addIndex(new Index('email', $name, true, array('email'))); $this->db->createTable($table); }