ApdbSqlSchema¶
- class lsst.dax.apdb.ApdbSqlSchema(engine: Engine, dia_object_index: str, htm_index_column: str, schema_file: str, schema_name: str = 'ApdbSchema', prefix: str = '', namespace: str | None = None, use_insert_id: bool = False)¶
- Bases: - ApdbSchema- Class for management of APDB schema. - Parameters:
- enginesqlalchemy.engine.Engine
- SQLAlchemy engine instance 
- dia_object_indexstr
- Indexing mode for DiaObject table, see - ApdbSqlConfig.dia_object_indexfor details.
- htm_index_columnstr
- Name of a HTM index column for DiaObject and DiaSource tables. 
- schema_filestr
- Name of the YAML schema file. 
- schema_namestr, optional
- Name of the schema in YAML files. 
- prefixstr, optional
- Prefix to add to all schema elements. 
- namespacestr, optional
- Namespace (or schema name) to use for all APDB tables. 
- use_insert_idbool, optional
 
- engine
- Attributes:
- objectssqlalchemy.Table
- DiaObject table instance 
- objects_lastsqlalchemy.Table
- DiaObjectLast table instance, may be None 
- sourcessqlalchemy.Table
- DiaSource table instance 
- forcedSourcessqlalchemy.Table
- DiaForcedSource table instance 
- has_insert_id- bool
- Whether insert ID tables are to be used ( - bool).
 
- objects
 - Attributes Summary - Whether insert ID tables are to be used ( - bool).- Tables that need pixelId column for spatial indexing. - Methods Summary - column_dtype(felis_type)- Return Pandas data type for a given Felis column type. - get_apdb_columns(table_enum)- Return list of columns defined for a table in APDB schema. - get_table(table_enum)- Return SQLAlchemy table instance for a specified table type/enum. - makeSchema([drop])- Create or re-create all tables. - Attributes Documentation - pixel_id_tables = (<ApdbTables.DiaObject: 'DiaObject'>, <ApdbTables.DiaObjectLast: 'DiaObjectLast'>, <ApdbTables.DiaSource: 'DiaSource'>)¶
- Tables that need pixelId column for spatial indexing. 
 - Methods Documentation - column_dtype(felis_type: Type[FelisType]) type | str¶
- Return Pandas data type for a given Felis column type. 
 - get_apdb_columns(table_enum: ApdbTables | ExtraTables) list[sqlalchemy.sql.schema.Column]¶
- Return list of columns defined for a table in APDB schema. - Returned list excludes columns that are implementation-specific, e.g. - pixelIdcolumn is not include in the returned list.- Parameters:
- table_enumApdbTablesorExtraTables
- Type of table. 
 
- table_enum
- Returns:
- tablelist[sqlalchemy.schema.Column]
- Table instance. 
 
- table
- Raises:
- ValueError
- Raised if - table_enumis not valid for this database.
 
 
 - get_table(table_enum: ApdbTables | ExtraTables) Table¶
- Return SQLAlchemy table instance for a specified table type/enum. - Parameters:
- table_enumApdbTablesorExtraTables
- Type of table to return. 
 
- table_enum
- Returns:
- tablesqlalchemy.schema.Table
- Table instance. 
 
- table
- Raises:
- ValueError
- Raised if - table_enumis not valid for this database.