whole_func_string: 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;
          }, {});
      }
func_code_string: 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;
          }, {});
      }
func_documentation_string: Convert mysql format to standard javascript object