OpaqueTableStorage¶
-
class
lsst.daf.butler.registry.interfaces.
OpaqueTableStorage
(name: str)¶ Bases:
abc.ABC
An interface that manages the records associated with a particular opaque table in a
Registry
.Parameters: - name :
str
Name of the opaque table.
Methods Summary
delete
(columns, *rows)Remove records from an opaque table. fetch
(**where)Retrieve records from an opaque table. insert
(*data, transaction)Insert records into the table Methods Documentation
-
delete
(columns: Iterable[str], *rows) → None¶ Remove records from an opaque table.
Parameters: - columns: `~collections.abc.Iterable` of `str`
The names of columns that will be used to constrain the rows to be deleted; these will be combined via
AND
to form theWHERE
clause of the delete query.- *rows
Positional arguments are the keys of rows to be deleted, as dictionaries mapping column name to value. The keys in all dictionaries must be exactly the names in
columns
.
-
fetch
(**where) → Iterator[dict]¶ Retrieve records from an opaque table.
Parameters: - **where
Additional keyword arguments are interpreted as equality constraints that restrict the returned rows (combined with AND); keyword arguments are column names and values are the values they must have.
Yields: - row :
dict
A dictionary representing a single result row.
-
insert
(*data, transaction: DatastoreTransaction | None = None) → None¶ Insert records into the table
Parameters: - *data
Each additional positional argument is a dictionary that represents a single row to be added.
- transaction :
DatastoreTransaction
, optional Transaction object that can be used to enable an explicit rollback of the insert to be registered. Can be ignored if rollback is handled via a different mechanism, such as by a database. Can be
None
if no external transaction is available.
- name :