public function type_to_sql($type, $options = array())
{
$natives = $this->native_database_types();
if (!array_key_exists($type, $natives)) {
$error = sprintf("Error: I don't know what column type of '%s' maps to for SQLite3.", $type);
$error .= "\nYou provided: {$type}\n";
$error .= "Valid types are: \n";
$error .= implode(', ', array_diff(array_keys($natives), array('primary_key')));
throw new Ruckusing_Exception($error, Ruckusing_Exception::INVALID_ARGUMENT);
}
$native_type = $natives[$type];
$column_type_sql = $native_type['name'];
$optionsLimit = isset($options['limit']) ? $options['limit'] : null;
$nativeLimit = isset($native_type['limit']) ? $native_type['limit'] : null;
$limit = $optionsLimit ? $optionsLimit : $nativeLimit;
if ($limit !== null) {
$column_type_sql .= sprintf("(%d)", $limit);
}
return $column_type_sql;
}