lib/sql.js
function(schema,definition) {
        return _.reduce(schema, function(memo, field) {
           // console.log('definition normalize');console.log(definition);
            // Marshal mysql DESCRIBE to waterline collection semantics
            var attrName = field.COLUMN_NAME.toLowerCase();
            /*Comme oracle n'est pas sensible à la casse, la liste des colonnes retournées est differentes de celle enregistrée dans le schema, 
             ce qui pose des problèmes à waterline*/
            Object.keys(definition).forEach(function (key){
                if(attrName === key.toLowerCase()) attrName = key;
            });
            var type = field.DATA_TYPE;

            // Remove (n) column-size indicators
            type = type.replace(/\([0-9]+\)$/, '');

            memo[attrName] = {
                type: type
                        // defaultsTo: '',
                        //autoIncrement: field.Extra === 'auto_increment'
            };

            if (field.primaryKey) {
                memo[attrName].primaryKey = field.primaryKey;
            }

            if (field.unique) {
                memo[attrName].unique = field.unique;
            }

            if (field.indexed) {
                memo[attrName].indexed = field.indexed;
            }
            return memo;
        }, {});
    }
function(schema,definition) {
        return _.reduce(schema, function(memo, field) {
           // console.log('definition normalize');console.log(definition);
            // Marshal mysql DESCRIBE to waterline collection semantics
            var attrName = field.COLUMN_NAME.toLowerCase();
            /*Comme oracle n'est pas sensible à la casse, la liste des colonnes retournées est differentes de celle enregistrée dans le schema, 
             ce qui pose des problèmes à waterline*/
            Object.keys(definition).forEach(function (key){
                if(attrName === key.toLowerCase()) attrName = key;
            });
            var type = field.DATA_TYPE;

            // Remove (n) column-size indicators
            type = type.replace(/\([0-9]+\)$/, '');

            memo[attrName] = {
                type: type
                        // defaultsTo: '',
                        //autoIncrement: field.Extra === 'auto_increment'
            };

            if (field.primaryKey) {
                memo[attrName].primaryKey = field.primaryKey;
            }

            if (field.unique) {
                memo[attrName].unique = field.unique;
            }

            if (field.indexed) {
                memo[attrName].indexed = field.indexed;
            }
            return memo;
        }, {});
    }
Convert mysql format to standard javascript object