コード例 #1
0
ファイル: TimeAccess.php プロジェクト: gudwin/extasy-users
 public function onUpdate(QueryBuilder $query)
 {
     $query->setSet($this->fieldName, serialize($this->value));
 }
コード例 #2
0
ファイル: Index.php プロジェクト: gudwin/extasy-model
 public function onCreateTable(QueryBuilder $queryBuilder)
 {
     $queryBuilder->addFields(sprintf('`%s` int not null auto_increment', $this->fieldName));
     $queryBuilder->addFields(sprintf('primary key (`%s`) ', $this->fieldName));
     $queryBuilder->setTableOptions('AUTO_INCREMENT=1');
 }
コード例 #3
0
ファイル: DateTime.php プロジェクト: gudwin/extasy-model
 public function onCreateTable(QueryBuilder $queryBuilder)
 {
     $queryBuilder->addFields(sprintf('`%s` datetime not null default "0000-00-00 00:00:00"', $this->fieldName));
 }
コード例 #4
0
ファイル: VarcharColumn.php プロジェクト: gudwin/extasy-model
 public function onCreateTable(QueryBuilder $queryBuilder)
 {
     $queryBuilder->addFields(sprintf('`%s` varchar(255) not null default ""', $this->fieldName));
 }
コード例 #5
0
ファイル: IP.php プロジェクト: gudwin/extasy-model
 public function onCreateTable(QueryBuilder $queryBuilder)
 {
     $queryBuilder->addFields(sprintf('`%s` int unsigned not null default 0', $this->fieldName));
 }
コード例 #6
0
ファイル: Serializeable.php プロジェクト: gudwin/extasy-model
 public function onCreateTable(QueryBuilder $queryBuilder)
 {
     $queryBuilder->addFields(sprintf('`%s` text null', $this->fieldName));
 }
コード例 #7
0
ファイル: Model.php プロジェクト: gudwin/extasy-model
 public function createDatabaseTable($dropTable = false)
 {
     $fields = $this->getFieldsInfo();
     if ($dropTable) {
         $this->dropTable();
     }
     $queryBuilder = new QueryBuilder('create');
     $queryBuilder->setTableName($fields['table']);
     foreach ($this->columns as $column) {
         $column->onCreateTable($queryBuilder);
     }
     $sql = $queryBuilder->prepare();
     DB::post($sql);
 }