Scroll to navigation

DBIx::Class::Manual::ResultClass(3pm) User Contributed Perl Documentation DBIx::Class::Manual::ResultClass(3pm)


DBIx::Class::Manual::ResultClass - Representing a single result (row) from a DB query


  package My::Schema::Result::Track;
  use parent 'DBIx::Class::Core';
    id => {
      data_type => 'int',
      is_auto_increment => 1,
    cd_id => {
      data_type => 'int',
    title => {
      data_type => 'varchar',
      size => 50,
    rank => {
      data_type => 'int',
      is_nullable => 1,
  __PACKAGE__->add_unique_constraint(u_title => ['cd_id', 'title']);


In DBIx::Class, a user normally receives query results as instances of a certain "Result Class", depending on the main query source. Besides being the primary "toolset" for interaction with your data, a "Result Class" also serves to establish source metadata, which is then used during initialization of your DBIx::Class::Schema instance.

Because of these multiple seemingly conflicting purposes, it is hard to aggregate the documentation of various methods available on a typical "Result Class". This document serves as a general overview of "Result Class" declaration best practices, and offers an index of the available methods (and the Components/Roles which provide them).


has_many, has_one, might_have, belongs_to, many_to_many
register_relationship, count_related, create_related, delete_related, find_or_create_related, find_or_new_related, find_related, new_related, related_resultset, search_related, search_related_rs, set_from_related, update_from_related, update_or_create_related
get_inflated_column, inflate_column, set_inflated_column, store_inflated_column
ID, id, ident_condition
delete, update, copy, discard_changes, get_column, get_columns, get_dirty_columns, get_from_storage, get_inflated_columns, has_column_loaded, in_storage, inflate_result, insert, insert_or_update, is_changed, is_column_changed, make_column_dirty, new, register_column, result_source, set_column, set_columns, set_inflated_columns, store_column, throw_exception, update_or_insert
table, table_class
add_column, add_columns, add_relationship, add_unique_constraint, add_unique_constraints, column_info, column_info_from_storage, columns, columns_info, has_column, has_relationship, primary_columns, relationship_info, relationships, remove_column, remove_columns, result_class, resultset_attributes, resultset_class, sequence, set_primary_key, source_info, source_name, unique_constraint_columns, unique_constraint_names, unique_constraints


Check the list of additional DBIC resources.


This module is free software copyright by the DBIx::Class (DBIC) authors. You can redistribute it and/or modify it under the same terms as the DBIx::Class library.

2018-04-19 perl v5.26.2