3 DBIx::Class::Manual::Glossary - Clarification of terms used.
7 This document lists various terms used in DBIx::Class and attempts to
14 Refers to a single physical schema within an RDBMS. Synonymous with the terms
15 'database', for MySQL; and 'schema', for most other RDBMS(s).
17 In other words, it's the 'xyz' _thing_ you're connecting to when using any of
18 the following L<DSN|DBI/connect>(s):
20 dbi:DriverName:xyz@hostname:port
21 dbi:DriverName:database=xyz;host=hostname;port=port
25 The act of turning database row data into objects in
26 language-space. DBIx::Class further allows you to inflate your data
27 into perl objects which more usefully represent their contents. For
28 example: L<DBIx::Class::InflateColumn::DateTime> for datetime or
29 timestamp column data.
33 This is an SQL keyword that gets mentioned a lot. It is used to fetch
34 data from more than one table at once, by C<join>ing the tables on
35 fields where they have common data.
39 A normalised database is a sane database. Each table contains only
40 data belonging to one concept, related tables refer to the key field
41 or fields of each other. Some links to webpages about normalisation
42 can be found in L<DBIx::Class::Manual::FAQ|the FAQ>.
46 Object-relational mapping, or Object-relationship modelling. Either
47 way it's a method of mapping the contents of database tables (rows),
48 to objects in programming-language-space. DBIx::Class is an ORM.
52 In DBIx::Class a relationship defines the connection between exactly
53 two tables. The relationship condition lists the columns in each table
54 that contain the same values. It is used to output an SQL JOIN
55 condition between the tables.
57 =head2 Relationship bridge
59 A relationship bridge, such as C<many_to_many> defines an accessor to
60 retrieve row contents across multiple relationships.
64 This is an object representing a set of data. It can either be an
65 entire table, or the results of a query. The actual data is not held
66 in the ResultSet, it is only a description of how to fetch the data.
68 See also: L<DBIx::Class::ResultSet/METHODS>
72 ResultSource objects represent the source of your data, they are also known as
75 See also: L<DBIx::Class::ResultSource/METHODS>
83 Row objects contain your actual data. They are returned from ResultSet objects.
91 A Schema object represents your entire table collection, plus the
92 connection to the database. You can create one or more schema objects,
93 connected to various databases, with various users, using the same set
94 of table (ResultSource) definitions.