thanosql.resources._table

Module Contents

Classes

BaseColumn

Column

Unique

PrimaryKey

ForeignKey

Constraints

BaseTable

TableObject

IfExists

Create a collection of name/value pairs.

TableService

Table

TableTemplate

TableTemplateService

class thanosql.resources._table.BaseColumn

Bases: thanosql.resources._model.BaseModel

default: str | None
is_nullable: bool | None = True
type: str
name: str
class thanosql.resources._table.Column

Bases: thanosql.resources._model.BaseModel

id: int | None
default: str | None
is_nullable: bool | None = True
type: str
name: str
class thanosql.resources._table.Unique

Bases: thanosql.resources._model.BaseModel

name: str | None
columns: List[str] | None = []
class thanosql.resources._table.PrimaryKey

Bases: thanosql.resources._model.BaseModel

name: str | None
columns: List[str] | None = []
class thanosql.resources._table.ForeignKey

Bases: thanosql.resources._model.BaseModel

name: str | None
reference_schema: str = 'public'
reference_column: str
reference_table: str
column: str
class thanosql.resources._table.Constraints

Bases: thanosql.resources._model.BaseModel

unique: List[Unique] | None
primary_key: PrimaryKey | None
foreign_keys: List[ForeignKey] | None
class thanosql.resources._table.BaseTable

Bases: thanosql.resources._model.BaseModel

name: str | None
table_schema: str | None
columns: List[BaseColumn] | None
constraints: Constraints | None
class thanosql.resources._table.TableObject

Bases: thanosql.resources._model.BaseModel

columns: List[BaseColumn] | None
constraints: Constraints | None
class thanosql.resources._table.IfExists(*args, **kwds)

Bases: enum.Enum

Create a collection of name/value pairs.

Example enumeration:

>>> class Color(Enum):
...     RED = 1
...     BLUE = 2
...     GREEN = 3

Access them by:

  • attribute access:

    >>> Color.RED
    <Color.RED: 1>
    
  • value lookup:

    >>> Color(1)
    <Color.RED: 1>
    
  • name lookup:

    >>> Color['RED']
    <Color.RED: 1>
    

Enumerations can be iterated over, and know how many members they have:

>>> len(Color)
3
>>> list(Color)
[<Color.RED: 1>, <Color.BLUE: 2>, <Color.GREEN: 3>]

Methods can be added to enumerations, and members can have their own attributes – see the documentation for details.

FAIL = 'fail'
APPEND = 'append'
REPLACE = 'replace'
class thanosql.resources._table.TableService(client: thanosql._client.ThanoSQL)

Bases: thanosql._service.ThanoSQLService

list(schema: str | None = None, verbose: bool | None = None, offset: int | None = None, limit: int | None = None) List[Table]
get(name: str, schema: str | None = None) Table | dict
update(name: str, schema: str | None = None, table: BaseTable | None = None) Table
create(name: str, schema: str | None = None, table: TableObject | None = None) Table
upload(name: str, file: str | os.PathLike | None = None, df: pandas.DataFrame | None = None, schema: str | None = None, table: TableObject | None = None, if_exists: str = 'fail') Table
delete(name: str, schema: str | None = None) dict
class thanosql.resources._table.Table

Bases: BaseTable

service: TableService | None
get_records(offset: int | None = None, limit: int | None = None) thanosql.resources._record.Records
get_records_as_csv(timezone_offset: int | None = None) None
insert(records: List[dict]) Table | dict
class thanosql.resources._table.TableTemplate

Bases: thanosql.resources._model.BaseModel

name: str
table_template: TableObject
version: str | None
compatibility: str | None
created_at: datetime.datetime | None
class thanosql.resources._table.TableTemplateService(client: thanosql._client.ThanoSQL)

Bases: thanosql._service.ThanoSQLService

list(search: str | None = None, order_by: str | None = None, latest: bool | None = None) List[TableTemplate]
get(name: str, version: str | None = None) dict
create(name: str, table_template: TableObject, version: str | None = None, compatibility: str | None = None) TableTemplate
delete(name: str, version: str | None = None) dict