code: func (adapter *SQLiteAdapter) ErrorEquals(err error, sqlErrorType types.SQLErrorType) bool {
  	if err, ok := err.(sqlite3.Error); ok {
  		errDescription := err.Error()
  
  		switch sqlErrorType {
  		case types.SQLErrorTypeGeneric:
  			return true
  		case types.SQLErrorTypeDuplicatedColumn:
  			return err.Code == 1 && strings.Contains(errDescription, "duplicate column")
  		case types.SQLErrorTypeDuplicatedTable:
  			return err.Code == 1 && strings.Contains(errDescription, "table") && strings.Contains(errDescription, "already exists")
  		case types.SQLErrorTypeUndefinedTable:
  			return err.Code == 1 && strings.Contains(errDescription, "no such table")
  		case types.SQLErrorTypeUndefinedColumn:
  			return err.Code == 1 && strings.Contains(errDescription, "table") && strings.Contains(errDescription, "has no column named")
  		case types.SQLErrorTypeInvalidType:
  			// NOT SUPPORTED
  			return false
  		}
  	}
  
  	return false
  }
docs: // ErrorEquals verify if an error is of a given SQL type