X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2FDBIx%2FClass%2FManual%2FGlossary.pod;h=334637d33b8632c55fdbfed324eefc30a5c520fb;hb=5529838f7afff91467ef2664087999ab222da48d;hp=5cd25b63c269a5bfe5f9cf7958e90f0002a262df;hpb=92fcfd01a5408299cc040bb2282d644b46a7c41d;p=dbsrgits%2FDBIx-Class.git diff --git a/lib/DBIx/Class/Manual/Glossary.pod b/lib/DBIx/Class/Manual/Glossary.pod index 5cd25b6..334637d 100644 --- a/lib/DBIx/Class/Manual/Glossary.pod +++ b/lib/DBIx/Class/Manual/Glossary.pod @@ -55,7 +55,7 @@ condition between the tables. =head2 Relationship bridge A relationship bridge, such as C defines an accessor to -retrieve row contents across multiple relationships. +retrieve row contents across multiple relationships. The difference between a bridge and a relationship is, that the bridge cannot be used to C tables in a C, instead its component @@ -66,26 +66,28 @@ relationships must be used. A Schema object represents your entire table collection, plus the connection to the database. You can create one or more schema objects, connected to various databases, with various users, using the same set -of table L definitions. +of table L definitions. At least one L class is needed per database. -=head2 Result class +=head2 Result Class A Result class defines both a source of data (usually one per table), -and the methods that will be available in the L objects created -using that source. +and the methods that will be available in the L objects +created using that source. One Result class is needed per data source (table, view, query) used in your application, they should inherit from L. +See also: L + =head2 ResultSource ResultSource objects represent the source of your data, these are sometimes (incorrectly) called table objects. ResultSources do not need to be directly created, a ResultSource -instance is created for each L in your L, by +instance is created for each L in your L, by the proxied methods C and C. See also: L @@ -99,25 +101,41 @@ fetch the data. See also: L -=head2 Record +=head2 Result + +Result objects contain your actual data. They are returned from +ResultSet objects. These are sometimes (incorrectly) called +row objects, including older versions of the DBIC documentation. -See Row. +See also: L =head2 Row -Row objects contain your actual data. They are returned from ResultSet objects. +See Result. =head2 Object -See Row. +See Result. -=head2 join +=head2 Record + +See Result. =head2 prefetch +Similar to a join, except the related result objects are fetched and +cached for future use, instead of used directly from the ResultSet. This +allows you to jump to different relationships within a Result without +worrying about generating a ton of extra SELECT statements. =head1 SQL TERMS +=head2 CRUD + +Create, Read, Update, Delete. A general concept of something that can +do all four operations (INSERT, SELECT, UPDATE, DELETE), usually at a +row-level. + =head2 Join This is an SQL keyword, it is used to link multiple tables in one SQL @@ -130,9 +148,17 @@ to issue multiple SQL queries. A normalised database is a sane database. Each table contains only data belonging to one concept, related tables refer to the key field or fields of each other. Some links to webpages about normalisation -can be found in L. +can be found in L. =head2 Related data In SQL, related data actually refers to data that are normalised into -the same table. (Yes. DBIC does mis-use this term). +the same table. (Yes. DBIC does mis-use this term.) + +=head1 AUTHOR AND CONTRIBUTORS + +See L and L in DBIx::Class + +=head1 LICENSE + +You may distribute this code under the same terms as Perl itself.