Relation
Deprecated since version 2.26: Rarely used API
- class Relation(*args, **kwargs)
A GRelation
is a table of data which can be indexed on any number
of fields, rather like simple database tables. A GRelation
contains
a number of records, called tuples. Each record contains a number of
fields. Records are not ordered, so it is not possible to find the
record at a particular index.
Note that GRelation
tables are currently limited to 2 fields.
To create a GRelation
, use new
.
To specify which fields should be indexed, use index
.
Note that this must be called before any tuples are added to the
GRelation
.
To add records to a GRelation
use insert
.
To determine if a given record appears in a GRelation
, use
exists
. Note that fields are compared directly, so
pointers must point to the exact same position (i.e. different
copies of the same string will not match.)
To count the number of records which have a particular value in a
given field, use count
.
To get all the records which have a particular value in a given
field, use select
. To access fields of the resulting
records, use index
. To free the resulting records use
destroy
.
To delete all records which have a particular value in a given
field, use delete
.
To destroy the GRelation
, use destroy
.
To help debug GRelation
objects, use print
.
GRelation
has been marked as deprecated, since this API has never
been fully implemented, is not very actively maintained and rarely
used.
Methods
- class Relation
- count(key: None, field: int) int
Returns the number of tuples in a
Relation
that have the given value in the given field.Deprecated since version 2.26: Rarely used API
- Parameters:
key – the value to compare with.
field – the field of each record to match.
- delete(key: None, field: int) int
Deletes any records from a
Relation
that have the given key value in the given field.Deprecated since version 2.26: Rarely used API
- Parameters:
key – the value to compare with.
field – the field of each record to match.