/** * @see DBManager::massageFieldDef() */ public function massageFieldDef(&$fieldDef, $tablename) { parent::massageFieldDef($fieldDef, $tablename); if ($fieldDef['type'] == 'int') { $fieldDef['len'] = '4'; } if (empty($fieldDef['len'])) { switch ($fieldDef['type']) { case 'bit': case 'bool': $fieldDef['len'] = '1'; break; case 'smallint': $fieldDef['len'] = '2'; break; case 'float': $fieldDef['len'] = '8'; break; case 'varchar': case 'nvarchar': $fieldDef['len'] = $this->isTextType($fieldDef['dbType']) ? 'max' : '255'; break; case 'image': $fieldDef['len'] = '2147483647'; break; case 'ntext': $fieldDef['len'] = '2147483646'; break; // Note: this is from legacy code, don't know if this is correct } } if ($fieldDef['type'] == 'decimal' && empty($fieldDef['precision']) && !strpos($fieldDef['len'], ',')) { $fieldDef['len'] .= ',0'; // Adding 0 precision if it is not specified } if (empty($fieldDef['default']) && in_array($fieldDef['type'], array('bit', 'bool'))) { $fieldDef['default'] = '0'; } if (isset($fieldDef['required']) && $fieldDef['required'] && !isset($fieldDef['default'])) { $fieldDef['default'] = ''; } // if ($fieldDef['type'] == 'bit' && empty($fieldDef['len']) ) // $fieldDef['len'] = '1'; // if ($fieldDef['type'] == 'bool' && empty($fieldDef['len']) ) // $fieldDef['len'] = '1'; // if ($fieldDef['type'] == 'float' && empty($fieldDef['len']) ) // $fieldDef['len'] = '8'; // if ($fieldDef['type'] == 'varchar' && empty($fieldDef['len']) ) // $fieldDef['len'] = '255'; // if ($fieldDef['type'] == 'nvarchar' && empty($fieldDef['len']) ) // $fieldDef['len'] = '255'; // if ($fieldDef['type'] == 'image' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2147483647'; // if ($fieldDef['type'] == 'ntext' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2147483646'; // if ($fieldDef['type'] == 'smallint' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2'; // if ($fieldDef['type'] == 'bit' && empty($fieldDef['default']) ) // $fieldDef['default'] = '0'; // if ($fieldDef['type'] == 'bool' && empty($fieldDef['default']) ) // $fieldDef['default'] = '0'; }
/** * @see DBManager::massageFieldDef() */ public function massageFieldDef(&$fieldDef, $tablename) { parent::massageFieldDef($fieldDef, $tablename); switch ($fieldDef['type']) { case 'integer': $fieldDef['len'] = '4'; break; case 'smallint': $fieldDef['len'] = '2'; break; case 'bigint': $fieldDef['len'] = '8'; break; case 'double': $fieldDef['len'] = '8'; break; case 'time': $fieldDef['len'] = '3'; break; case 'varchar': if (empty($fieldDef['len'])) { $fieldDef['len'] = '255'; } break; case 'decimal': if (empty($fieldDef['precision']) && !strpos($fieldDef['len'], ',')) { $fieldDef['len'] .= ',0'; } // Adding 0 precision if it is not specified break; } // IBM DB2 requires default value for NOT NULL fields if (!empty($fieldDef['required']) && empty($fieldDef['default'])) { switch ($fieldDef['type']) { case 'integer': case 'smallint': case 'bigint': case 'float': case 'double': case 'decimal': $fieldDef['default'] = 0; break; default: $fieldDef['default'] = ''; } } if (empty($fieldDef['isnull'])) { $fieldDef['isnull'] = 'false'; } // // if ($fieldDef['type'] == 'int') // $fieldDef['len'] = '4'; // if ($fieldDef['type'] == 'bit' && empty($fieldDef['len']) ) // $fieldDef['len'] = '1'; // if ($fieldDef['type'] == 'bool' && empty($fieldDef['len']) ) // $fieldDef['len'] = '1'; // if ($fieldDef['type'] == 'float' && empty($fieldDef['len']) ) // $fieldDef['len'] = '8'; // if ($fieldDef['type'] == 'varchar' && empty($fieldDef['len']) ) // $fieldDef['len'] = '255'; // if ($fieldDef['type'] == 'nvarchar' && empty($fieldDef['len']) ) // $fieldDef['len'] = '255'; // if ($fieldDef['type'] == 'bit' && empty($fieldDef['default']) ) // $fieldDef['default'] = '0'; // if ($fieldDef['type'] == 'bool' && empty($fieldDef['default']) ) // $fieldDef['default'] = '0'; // if ($fieldDef['type'] == 'image' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2147483647'; // if ($fieldDef['type'] == 'ntext' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2147483646'; // if ($fieldDef['type'] == 'smallint' && empty($fieldDef['len']) ) // $fieldDef['len'] = '2'; // if (isset($fieldDef['required']) && $fieldDef['required'] && !isset($fieldDef['default']) ) // $fieldDef['default'] = ''; // if ( isset($fieldDef['default']) && // ($fieldDef['dbType'] == 'text' // || $fieldDef['dbType'] == 'blob' // || $fieldDef['dbType'] == 'longtext' // || $fieldDef['dbType'] == 'longblob' )) // unset($fieldDef['default']); // if ($fieldDef['dbType'] == 'uint') // $fieldDef['len'] = '10'; // if ($fieldDef['dbType'] == 'ulong') // $fieldDef['len'] = '20'; // if ($fieldDef['dbType'] == 'bool') // $fieldDef['type'] = 'tinyint'; // if ($fieldDef['dbType'] == 'bool' && empty($fieldDef['default']) ) // $fieldDef['default'] = '0'; // if (($fieldDef['dbType'] == 'varchar' || $fieldDef['dbType'] == 'enum') && empty($fieldDef['len']) ) // $fieldDef['len'] = '255'; // if ($fieldDef['dbType'] == 'uint') // $fieldDef['len'] = '10'; // if ($fieldDef['dbType'] == 'int' && empty($fieldDef['len']) ) // $fieldDef['len'] = '11'; }
/** * @see DBManager::massageFieldDef() */ public function massageFieldDef(&$fieldDef, $tablename) { parent::massageFieldDef($fieldDef, $tablename); if (isset($fieldDef['default']) && ($fieldDef['dbType'] == 'text' || $fieldDef['dbType'] == 'blob' || $fieldDef['dbType'] == 'longtext' || $fieldDef['dbType'] == 'longblob')) { unset($fieldDef['default']); } if ($fieldDef['dbType'] == 'uint') { $fieldDef['len'] = '10'; } if ($fieldDef['dbType'] == 'ulong') { $fieldDef['len'] = '20'; } if ($fieldDef['dbType'] == 'bool') { $fieldDef['type'] = 'tinyint'; } if ($fieldDef['dbType'] == 'bool' && empty($fieldDef['default'])) { $fieldDef['default'] = '0'; } if (($fieldDef['dbType'] == 'varchar' || $fieldDef['dbType'] == 'enum') && empty($fieldDef['len'])) { $fieldDef['len'] = '255'; } if ($fieldDef['dbType'] == 'uint') { $fieldDef['len'] = '10'; } if ($fieldDef['dbType'] == 'int' && empty($fieldDef['len'])) { $fieldDef['len'] = '11'; } if ($fieldDef['dbType'] == 'decimal') { if (isset($fieldDef['len'])) { if (strstr($fieldDef['len'], ",") === false) { $fieldDef['len'] .= ",0"; } } else { $fieldDef['len'] = '10,0'; } } }
/** * @see DBManager::massageFieldDef() */ public function massageFieldDef(&$fieldDef, $tablename) { parent::massageFieldDef($fieldDef, $tablename); if ($fieldDef['name'] == 'id') { $fieldDef['required'] = 'true'; } if ($fieldDef['dbType'] == 'decimal') { $fieldDef['len'] = '20,2'; } if ($fieldDef['dbType'] == 'decimal2') { $fieldDef['len'] = '30,6'; } if ($fieldDef['dbType'] == 'double') { $fieldDef['len'] = '30,10'; } if ($fieldDef['dbType'] == 'float') { $fieldDef['len'] = '30,6'; } if ($fieldDef['dbType'] == 'uint') { $fieldDef['len'] = '15'; } if ($fieldDef['dbType'] == 'ulong') { $fieldDef['len'] = '38'; } if ($fieldDef['dbType'] == 'long') { $fieldDef['len'] = '38'; } if ($fieldDef['dbType'] == 'bool') { $fieldDef['len'] = '1'; } if ($fieldDef['dbType'] == 'id') { $fieldDef['len'] = '36'; } if ($fieldDef['dbType'] == 'currency') { $fieldDef['len'] = '26,6'; } if ($fieldDef['dbType'] == 'short') { $fieldDef['len'] = '3'; } if ($fieldDef['dbType'] == 'tinyint') { $fieldDef['len'] = '3'; } if ($fieldDef['dbType'] == 'int') { $fieldDef['len'] = '3'; } if ($fieldDef['type'] == 'int' && empty($fieldDef['len'])) { $fieldDef['len'] = ''; } if ($fieldDef['dbType'] == 'enum' && empty($fieldDef['len'])) { $fieldDef['len'] = '255'; } if ($fieldDef['type'] == 'varchar2' && empty($fieldDef['len'])) { $fieldDef['len'] = '255'; } }