code: function isSqliteValueCompatibleWithColumnType(value, columnType) {
      
      // Null is a valid value for any column type
      if (_.isNull(value)) {
          return true;
      }
      
      switch (columnType) {
          case ColumnType.Object:
              return _.isString(value);
          case ColumnType.Array:
              return _.isString(value);
          case ColumnType.String:
          case ColumnType.Text:
              return _.isString(value);
          case ColumnType.Boolean:
          case ColumnType.Bool:
              return _.isInteger(value);
          case ColumnType.Integer:
          case ColumnType.Int:
              return _.isInteger(value);
          case ColumnType.Date:
              return _.isInteger(value);
          case ColumnType.Real:
          case ColumnType.Float:
              return _.isNumber(value);
          default:
              return false;
      }
  }
docs: Checks if the SQLite value matches the specified ColumnType.
  A value read from a SQLite table can be incompatible with the specified column type, if it was stored
  in the table using a column type different from columnType.
  Example: If a non-integer numeric value is stored in a column of type ColumnType.Float and
  then deserialized into a column of type ColumnType.Integer, that will be an error.
  @private