private function mysqltype2moodletype($mysql_type) {
        $type = null;

        switch(strtoupper($mysql_type)) {
            case 'BIT':
                $type = 'L';
                break;

            case 'TINYINT':
            case 'SMALLINT':
            case 'MEDIUMINT':
            case 'INT':
            case 'INTEGER':
            case 'BIGINT':
                $type = 'I';
                break;

            case 'FLOAT':
            case 'DOUBLE':
            case 'DECIMAL':
                $type = 'N';
                break;

            case 'CHAR':
            case 'ENUM':
            case 'SET':
            case 'VARCHAR':
                $type = 'C';
                break;

            case 'TINYTEXT':
            case 'TEXT':
            case 'MEDIUMTEXT':
            case 'LONGTEXT':
                $type = 'X';
                break;

            case 'BINARY':
            case 'VARBINARY':
            case 'BLOB':
            case 'TINYBLOB':
            case 'MEDIUMBLOB':
            case 'LONGBLOB':
                $type = 'B';
                break;

            case 'DATE':
            case 'TIME':
            case 'DATETIME':
            case 'TIMESTAMP':
            case 'YEAR':
                $type = 'D';
                break;
        }

        if (!$type) {
            throw new dml_exception('invalidmysqlnativetype', $mysql_type);
        }
        return $type;
    }
private function mysqltype2moodletype($mysql_type) {
        $type = null;

        switch(strtoupper($mysql_type)) {
            case 'BIT':
                $type = 'L';
                break;

            case 'TINYINT':
            case 'SMALLINT':
            case 'MEDIUMINT':
            case 'INT':
            case 'INTEGER':
            case 'BIGINT':
                $type = 'I';
                break;

            case 'FLOAT':
            case 'DOUBLE':
            case 'DECIMAL':
                $type = 'N';
                break;

            case 'CHAR':
            case 'ENUM':
            case 'SET':
            case 'VARCHAR':
                $type = 'C';
                break;

            case 'TINYTEXT':
            case 'TEXT':
            case 'MEDIUMTEXT':
            case 'LONGTEXT':
                $type = 'X';
                break;

            case 'BINARY':
            case 'VARBINARY':
            case 'BLOB':
            case 'TINYBLOB':
            case 'MEDIUMBLOB':
            case 'LONGBLOB':
                $type = 'B';
                break;

            case 'DATE':
            case 'TIME':
            case 'DATETIME':
            case 'TIMESTAMP':
            case 'YEAR':
                $type = 'D';
                break;
        }

        if (!$type) {
            throw new dml_exception('invalidmysqlnativetype', $mysql_type);
        }
        return $type;
    }
private function mysqltype2moodletype ( $ mysql_type ) { $ type = null ; switch ( strtoupper ( $ mysql_type ) ) { case 'BIT' : $ type = 'L' ; break ; case 'TINYINT' : case 'SMALLINT' : case 'MEDIUMINT' : case 'INT' : case 'INTEGER' : case 'BIGINT' : $ type = 'I' ; break ; case 'FLOAT' : case 'DOUBLE' : case 'DECIMAL' : $ type = 'N' ; break ; case 'CHAR' : case 'ENUM' : case 'SET' : case 'VARCHAR' : $ type = 'C' ; break ; case 'TINYTEXT' : case 'TEXT' : case 'MEDIUMTEXT' : case 'LONGTEXT' : $ type = 'X' ; break ; case 'BINARY' : case 'VARBINARY' : case 'BLOB' : case 'TINYBLOB' : case 'MEDIUMBLOB' : case 'LONGBLOB' : $ type = 'B' ; break ; case 'DATE' : case 'TIME' : case 'DATETIME' : case 'TIMESTAMP' : case 'YEAR' : $ type = 'D' ; break ; } if ( ! $ type ) { throw new dml_exception ( 'invalidmysqlnativetype' , $ mysql_type ) ; } return $ type ; }
Normalise column type.
@param string $mysql_type
@return string one character
@throws dml_exception
Normalise column type .