- if (!empty($structure["indexes"])) {
- foreach ($structure["indexes"] AS $indexname => $fieldnames) {
- $sql_index = self::createIndex($indexname, $fieldnames, "");
- if (!is_null($sql_index)) {
- $sql_rows[] = $sql_index;
+ $fielddata = [];
+ if (DBA::isResult($fields)) {
+ foreach ($fields AS $field) {
+ $search = ['tinyint(1)', 'tinyint(3) unsigned', 'tinyint(4)', 'smallint(5) unsigned', 'smallint(6)', 'mediumint(8) unsigned', 'mediumint(9)', 'bigint(20)', 'int(10) unsigned', 'int(11)'];
+ $replace = ['boolean', 'tinyint unsigned', 'tinyint', 'smallint unsigned', 'smallint', 'mediumint unsigned', 'mediumint', 'bigint', 'int unsigned', 'int'];
+ $field['COLUMN_TYPE'] = str_replace($search, $replace, $field['COLUMN_TYPE']);
+
+ $fielddata[$field['COLUMN_NAME']]['type'] = $field['COLUMN_TYPE'];
+
+ if ($field['IS_NULLABLE'] == 'NO') {
+ $fielddata[$field['COLUMN_NAME']]['not null'] = 1;