Documentation
¶
Index ¶
- Variables
- type BelongsTo
- type Column
- type Constraint
- func (*Constraint) Descriptor() ([]byte, []int)deprecated
- func (x *Constraint) GetCheck() string
- func (x *Constraint) GetDefaultValue() string
- func (x *Constraint) GetOnDelete() ReferenceAction
- func (x *Constraint) GetOnUpdate() ReferenceAction
- func (x *Constraint) GetPrimaryKey() bool
- func (x *Constraint) GetRaw() string
- func (x *Constraint) GetReferencesColumn() string
- func (x *Constraint) GetReferencesSchema() string
- func (x *Constraint) GetReferencesTable() string
- func (x *Constraint) GetUnique() bool
- func (*Constraint) ProtoMessage()
- func (x *Constraint) ProtoReflect() protoreflect.Message
- func (x *Constraint) Reset()
- func (x *Constraint) String() string
- type HasOne
- func (*HasOne) Descriptor() ([]byte, []int)deprecated
- func (x *HasOne) GetConstraint() string
- func (x *HasOne) GetExistedField() bool
- func (x *HasOne) GetOnDeleteCascade() bool
- func (x *HasOne) GetOnDeleteSetNull() bool
- func (x *HasOne) GetRefName() string
- func (*HasOne) ProtoMessage()
- func (x *HasOne) ProtoReflect() protoreflect.Message
- func (x *HasOne) Reset()
- func (x *HasOne) String() string
- type Index
- func (*Index) Descriptor() ([]byte, []int)deprecated
- func (x *Index) GetColumns() []string
- func (x *Index) GetConcurrent() bool
- func (x *Index) GetExpressions() []string
- func (x *Index) GetInclude() []string
- func (x *Index) GetName() string
- func (x *Index) GetUnique() bool
- func (x *Index) GetUsing() string
- func (x *Index) GetWhere() string
- func (*Index) ProtoMessage()
- func (x *Index) ProtoReflect() protoreflect.Message
- func (x *Index) Reset()
- func (x *Index) String() string
- type ManyToMany
- func (*ManyToMany) Descriptor() ([]byte, []int)deprecated
- func (x *ManyToMany) GetBackRefConstraint() string
- func (x *ManyToMany) GetBackRefOnDeleteCascade() bool
- func (x *ManyToMany) GetPivotTable() *Table
- func (x *ManyToMany) GetRefConstraint() string
- func (x *ManyToMany) GetRefOnDeleteCascade() bool
- func (*ManyToMany) ProtoMessage()
- func (x *ManyToMany) ProtoReflect() protoreflect.Message
- func (x *ManyToMany) Reset()
- func (x *ManyToMany) String() string
- type OneToMany
- func (*OneToMany) Descriptor() ([]byte, []int)deprecated
- func (x *OneToMany) GetConstraint() string
- func (x *OneToMany) GetExistedField() bool
- func (x *OneToMany) GetOnDeleteCascade() bool
- func (x *OneToMany) GetRefName() string
- func (*OneToMany) ProtoMessage()
- func (x *OneToMany) ProtoReflect() protoreflect.Message
- func (x *OneToMany) Reset()
- func (x *OneToMany) String() string
- type PrimaryKey
- type ReferenceAction
- func (ReferenceAction) Descriptor() protoreflect.EnumDescriptor
- func (x ReferenceAction) Enum() *ReferenceAction
- func (ReferenceAction) EnumDescriptor() ([]byte, []int)deprecated
- func (x ReferenceAction) Number() protoreflect.EnumNumber
- func (x ReferenceAction) String() string
- func (ReferenceAction) Type() protoreflect.EnumType
- type Relation
- func (*Relation) Descriptor() ([]byte, []int)deprecated
- func (x *Relation) GetBelongsTo() *BelongsTo
- func (x *Relation) GetHasOne() *HasOne
- func (x *Relation) GetManyToMany() *ManyToMany
- func (x *Relation) GetOneToMany() *OneToMany
- func (x *Relation) GetRelation() isRelation_Relation
- func (*Relation) ProtoMessage()
- func (x *Relation) ProtoReflect() protoreflect.Message
- func (x *Relation) Reset()
- func (x *Relation) String() string
- type Relation_BelongsTo
- type Relation_HasOne
- type Relation_ManyToMany
- type Relation_OneToMany
- type Table
- func (*Table) Descriptor() ([]byte, []int)deprecated
- func (x *Table) GetConstraints() []string
- func (x *Table) GetGenerate() bool
- func (x *Table) GetIndexes() []*Index
- func (x *Table) GetPostStatements() []string
- func (x *Table) GetPrimaryKey() *PrimaryKey
- func (x *Table) GetSchema() string
- func (x *Table) GetTableName() string
- func (x *Table) GetUnique() []*UniqueConstraint
- func (x *Table) GetVirtualColumns() []*VirtualColumn
- func (*Table) ProtoMessage()
- func (x *Table) ProtoReflect() protoreflect.Message
- func (x *Table) Reset()
- func (x *Table) String() string
- type UniqueConstraint
- func (*UniqueConstraint) Descriptor() ([]byte, []int)deprecated
- func (x *UniqueConstraint) GetColumns() []string
- func (x *UniqueConstraint) GetName() string
- func (*UniqueConstraint) ProtoMessage()
- func (x *UniqueConstraint) ProtoReflect() protoreflect.Message
- func (x *UniqueConstraint) Reset()
- func (x *UniqueConstraint) String() string
- type VirtualColumn
- func (*VirtualColumn) Descriptor() ([]byte, []int)deprecated
- func (x *VirtualColumn) GetConstraints() *Constraint
- func (x *VirtualColumn) GetIsArray() bool
- func (x *VirtualColumn) GetIsNullable() bool
- func (x *VirtualColumn) GetSqlName() string
- func (x *VirtualColumn) GetSqlType() string
- func (*VirtualColumn) ProtoMessage()
- func (x *VirtualColumn) ProtoReflect() protoreflect.Message
- func (x *VirtualColumn) Reset()
- func (x *VirtualColumn) String() string
Constants ¶
This section is empty.
Variables ¶
var ( ReferenceAction_name = map[int32]string{ 0: "NO_ACTION", 1: "CASCADE", 2: "SET_NULL", 3: "SET_DEFAULT", 4: "RESTRICT", } ReferenceAction_value = map[string]int32{ "NO_ACTION": 0, "CASCADE": 1, "SET_NULL": 2, "SET_DEFAULT": 3, "RESTRICT": 4, } )
Enum value maps for ReferenceAction.
var ( // repeated string additional_code = 50000; E_AdditionalCode = &file_ratelproto_ratelproto_proto_extTypes[0] // repeated ratel.Table virtual_tables = 50001; E_VirtualTables = &file_ratelproto_ratelproto_proto_extTypes[1] )
Extension fields to descriptorpb.FileOptions.
var ( // optional ratel.Column column = 50003; E_Column = &file_ratelproto_ratelproto_proto_extTypes[3] // optional ratel.Relation relation = 50004; E_Relation = &file_ratelproto_ratelproto_proto_extTypes[4] )
Extension fields to descriptorpb.FieldOptions.
var (
// optional ratel.Table table = 50002;
E_Table = &file_ratelproto_ratelproto_proto_extTypes[2]
)
Extension fields to descriptorpb.MessageOptions.
var File_ratelproto_ratelproto_proto protoreflect.FileDescriptor
Functions ¶
This section is empty.
Types ¶
type BelongsTo ¶ added in v0.2.0
type BelongsTo struct {
// FK column name in current table (default: <related_table>_id)
ForeignKey string `protobuf:"bytes,1,opt,name=foreign_key,json=foreignKey,proto3" json:"foreign_key,omitempty"`
// PK column name in related table (default: id)
OwnerKey string `protobuf:"bytes,2,opt,name=owner_key,json=ownerKey,proto3" json:"owner_key,omitempty"`
// contains filtered or unexported fields
}
BelongsTo: Child belongs to Parent (e.g., Order belongs to User) The FK column is in the current (child) table
func (*BelongsTo) Descriptor
deprecated
added in
v0.2.0
func (*BelongsTo) GetForeignKey ¶ added in v0.2.0
func (*BelongsTo) GetOwnerKey ¶ added in v0.2.0
func (*BelongsTo) ProtoMessage ¶ added in v0.2.0
func (*BelongsTo) ProtoMessage()
func (*BelongsTo) ProtoReflect ¶ added in v0.2.0
func (x *BelongsTo) ProtoReflect() protoreflect.Message
type Column ¶
type Column struct {
// Skip this field in table generation
Skip bool `protobuf:"varint,1,opt,name=skip,proto3" json:"skip,omitempty"`
// Column constraints
Constraints *Constraint `protobuf:"bytes,2,opt,name=constraints,proto3" json:"constraints,omitempty"`
// contains filtered or unexported fields
}
func (*Column) Descriptor
deprecated
func (*Column) GetConstraints ¶
func (x *Column) GetConstraints() *Constraint
func (*Column) ProtoMessage ¶
func (*Column) ProtoMessage()
func (*Column) ProtoReflect ¶
func (x *Column) ProtoReflect() protoreflect.Message
type Constraint ¶
type Constraint struct {
Unique bool `protobuf:"varint,1,opt,name=unique,proto3" json:"unique,omitempty"`
PrimaryKey bool `protobuf:"varint,2,opt,name=primary_key,json=primaryKey,proto3" json:"primary_key,omitempty"`
DefaultValue string `protobuf:"bytes,3,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
// Raw SQL constraint (overrides above if set)
Raw string `protobuf:"bytes,4,opt,name=raw,proto3" json:"raw,omitempty"`
// CHECK expression, combinable with other constraints
// Example: check: "id <> ”" → CHECK (id <> ”)
Check string `protobuf:"bytes,5,opt,name=check,proto3" json:"check,omitempty"`
// Foreign key reference (REFERENCES clause)
// Example: references_table: "users", references_column: "id"
// For cross-schema: references_schema: "auth", references_table: "users"
ReferencesTable string `protobuf:"bytes,6,opt,name=references_table,json=referencesTable,proto3" json:"references_table,omitempty"`
ReferencesColumn string `protobuf:"bytes,7,opt,name=references_column,json=referencesColumn,proto3" json:"references_column,omitempty"`
OnDelete ReferenceAction `protobuf:"varint,8,opt,name=on_delete,json=onDelete,proto3,enum=ratel.ReferenceAction" json:"on_delete,omitempty"`
OnUpdate ReferenceAction `protobuf:"varint,9,opt,name=on_update,json=onUpdate,proto3,enum=ratel.ReferenceAction" json:"on_update,omitempty"`
ReferencesSchema string `protobuf:"bytes,10,opt,name=references_schema,json=referencesSchema,proto3" json:"references_schema,omitempty"`
// contains filtered or unexported fields
}
func (*Constraint) Descriptor
deprecated
func (*Constraint) Descriptor() ([]byte, []int)
Deprecated: Use Constraint.ProtoReflect.Descriptor instead.
func (*Constraint) GetCheck ¶ added in v0.3.0
func (x *Constraint) GetCheck() string
func (*Constraint) GetDefaultValue ¶
func (x *Constraint) GetDefaultValue() string
func (*Constraint) GetOnDelete ¶ added in v0.3.0
func (x *Constraint) GetOnDelete() ReferenceAction
func (*Constraint) GetOnUpdate ¶ added in v0.3.0
func (x *Constraint) GetOnUpdate() ReferenceAction
func (*Constraint) GetPrimaryKey ¶
func (x *Constraint) GetPrimaryKey() bool
func (*Constraint) GetRaw ¶
func (x *Constraint) GetRaw() string
func (*Constraint) GetReferencesColumn ¶ added in v0.3.0
func (x *Constraint) GetReferencesColumn() string
func (*Constraint) GetReferencesSchema ¶ added in v0.3.0
func (x *Constraint) GetReferencesSchema() string
func (*Constraint) GetReferencesTable ¶ added in v0.3.0
func (x *Constraint) GetReferencesTable() string
func (*Constraint) GetUnique ¶
func (x *Constraint) GetUnique() bool
func (*Constraint) ProtoMessage ¶
func (*Constraint) ProtoMessage()
func (*Constraint) ProtoReflect ¶
func (x *Constraint) ProtoReflect() protoreflect.Message
func (*Constraint) Reset ¶
func (x *Constraint) Reset()
func (*Constraint) String ¶
func (x *Constraint) String() string
type HasOne ¶ added in v0.2.0
type HasOne struct {
// FK column name in related table (default: <table>_id)
RefName string `protobuf:"bytes,1,opt,name=ref_name,json=refName,proto3" json:"ref_name,omitempty"`
// Raw constraint for FK (overrides default REFERENCES)
Constraint string `protobuf:"bytes,2,opt,name=constraint,proto3" json:"constraint,omitempty"`
// Add ON DELETE CASCADE
OnDeleteCascade bool `protobuf:"varint,3,opt,name=on_delete_cascade,json=onDeleteCascade,proto3" json:"on_delete_cascade,omitempty"`
// Add ON DELETE SET NULL
OnDeleteSetNull bool `protobuf:"varint,4,opt,name=on_delete_set_null,json=onDeleteSetNull,proto3" json:"on_delete_set_null,omitempty"`
// FK column already exists in related table (don't create virtual)
ExistedField bool `protobuf:"varint,5,opt,name=existed_field,json=existedField,proto3" json:"existed_field,omitempty"`
// contains filtered or unexported fields
}
HasOne: Parent has one Child (e.g., User has one Profile) Similar to OneToMany but returns single record instead of slice
func (*HasOne) Descriptor
deprecated
added in
v0.2.0
func (*HasOne) GetConstraint ¶ added in v0.2.0
func (*HasOne) GetExistedField ¶ added in v0.2.0
func (*HasOne) GetOnDeleteCascade ¶ added in v0.2.0
func (*HasOne) GetOnDeleteSetNull ¶ added in v0.2.0
func (*HasOne) GetRefName ¶ added in v0.2.0
func (*HasOne) ProtoMessage ¶ added in v0.2.0
func (*HasOne) ProtoMessage()
func (*HasOne) ProtoReflect ¶ added in v0.2.0
func (x *HasOne) ProtoReflect() protoreflect.Message
type Index ¶
type Index struct {
// Index name (auto-generated if empty: idx_<table>_<columns>)
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Columns to index
Columns []string `protobuf:"bytes,2,rep,name=columns,proto3" json:"columns,omitempty"`
// Unique index
Unique bool `protobuf:"varint,3,opt,name=unique,proto3" json:"unique,omitempty"`
// Partial index WHERE clause (e.g., "is_deleted = false")
Where string `protobuf:"bytes,4,opt,name=where,proto3" json:"where,omitempty"`
// Index method: btree (default), hash, gin, gist, spgist, brin
Using string `protobuf:"bytes,5,opt,name=using,proto3" json:"using,omitempty"`
// Include columns (INCLUDE clause for covering indexes)
Include []string `protobuf:"bytes,6,rep,name=include,proto3" json:"include,omitempty"`
// Expression columns (e.g., "lower(email)", "created_at::date")
// Use instead of 'columns' for expression-based indexes
Expressions []string `protobuf:"bytes,7,rep,name=expressions,proto3" json:"expressions,omitempty"`
// Concurrent index creation (CREATE INDEX CONCURRENTLY)
Concurrent bool `protobuf:"varint,8,opt,name=concurrent,proto3" json:"concurrent,omitempty"`
// contains filtered or unexported fields
}
func (*Index) Descriptor
deprecated
func (*Index) GetColumns ¶
func (*Index) GetConcurrent ¶
func (*Index) GetExpressions ¶
func (*Index) GetInclude ¶
func (*Index) ProtoMessage ¶
func (*Index) ProtoMessage()
func (*Index) ProtoReflect ¶
func (x *Index) ProtoReflect() protoreflect.Message
type ManyToMany ¶
type ManyToMany struct {
// Optional pivot table configuration
PivotTable *Table `protobuf:"bytes,1,opt,name=pivot_table,json=pivotTable,proto3,oneof" json:"pivot_table,omitempty"`
// FK constraints
RefOnDeleteCascade bool `protobuf:"varint,2,opt,name=ref_on_delete_cascade,json=refOnDeleteCascade,proto3" json:"ref_on_delete_cascade,omitempty"`
RefConstraint string `protobuf:"bytes,3,opt,name=ref_constraint,json=refConstraint,proto3" json:"ref_constraint,omitempty"`
BackRefOnDeleteCascade bool `` /* 134-byte string literal not displayed */
BackRefConstraint string `protobuf:"bytes,5,opt,name=back_ref_constraint,json=backRefConstraint,proto3" json:"back_ref_constraint,omitempty"`
// contains filtered or unexported fields
}
ManyToMany: Both sides have many of each other through pivot table (e.g., Product has many Categories through product_categories)
func (*ManyToMany) Descriptor
deprecated
func (*ManyToMany) Descriptor() ([]byte, []int)
Deprecated: Use ManyToMany.ProtoReflect.Descriptor instead.
func (*ManyToMany) GetBackRefConstraint ¶
func (x *ManyToMany) GetBackRefConstraint() string
func (*ManyToMany) GetBackRefOnDeleteCascade ¶
func (x *ManyToMany) GetBackRefOnDeleteCascade() bool
func (*ManyToMany) GetPivotTable ¶
func (x *ManyToMany) GetPivotTable() *Table
func (*ManyToMany) GetRefConstraint ¶
func (x *ManyToMany) GetRefConstraint() string
func (*ManyToMany) GetRefOnDeleteCascade ¶
func (x *ManyToMany) GetRefOnDeleteCascade() bool
func (*ManyToMany) ProtoMessage ¶
func (*ManyToMany) ProtoMessage()
func (*ManyToMany) ProtoReflect ¶
func (x *ManyToMany) ProtoReflect() protoreflect.Message
func (*ManyToMany) Reset ¶
func (x *ManyToMany) Reset()
func (*ManyToMany) String ¶
func (x *ManyToMany) String() string
type OneToMany ¶
type OneToMany struct {
// FK column name in related table (default: <table>_id)
RefName string `protobuf:"bytes,1,opt,name=ref_name,json=refName,proto3" json:"ref_name,omitempty"`
// Raw constraint for FK (overrides default REFERENCES)
Constraint string `protobuf:"bytes,2,opt,name=constraint,proto3" json:"constraint,omitempty"`
// Add ON DELETE CASCADE
OnDeleteCascade bool `protobuf:"varint,3,opt,name=on_delete_cascade,json=onDeleteCascade,proto3" json:"on_delete_cascade,omitempty"`
// FK column already exists in related table (don't create virtual)
ExistedField bool `protobuf:"varint,4,opt,name=existed_field,json=existedField,proto3" json:"existed_field,omitempty"`
// contains filtered or unexported fields
}
OneToMany: Parent has many Children (e.g., User has many Orders) The FK column is in the related (child) table
func (*OneToMany) Descriptor
deprecated
func (*OneToMany) GetConstraint ¶
func (*OneToMany) GetExistedField ¶
func (*OneToMany) GetOnDeleteCascade ¶
func (*OneToMany) GetRefName ¶
func (*OneToMany) ProtoMessage ¶
func (*OneToMany) ProtoMessage()
func (*OneToMany) ProtoReflect ¶
func (x *OneToMany) ProtoReflect() protoreflect.Message
type PrimaryKey ¶
type PrimaryKey struct {
// Columns in the primary key
Columns []string `protobuf:"bytes,1,rep,name=columns,proto3" json:"columns,omitempty"`
// contains filtered or unexported fields
}
Composite primary key
func (*PrimaryKey) Descriptor
deprecated
func (*PrimaryKey) Descriptor() ([]byte, []int)
Deprecated: Use PrimaryKey.ProtoReflect.Descriptor instead.
func (*PrimaryKey) GetColumns ¶
func (x *PrimaryKey) GetColumns() []string
func (*PrimaryKey) ProtoMessage ¶
func (*PrimaryKey) ProtoMessage()
func (*PrimaryKey) ProtoReflect ¶
func (x *PrimaryKey) ProtoReflect() protoreflect.Message
func (*PrimaryKey) Reset ¶
func (x *PrimaryKey) Reset()
func (*PrimaryKey) String ¶
func (x *PrimaryKey) String() string
type ReferenceAction ¶ added in v0.3.0
type ReferenceAction int32
SQL referential action for ON DELETE / ON UPDATE
const ( ReferenceAction_NO_ACTION ReferenceAction = 0 // default PostgreSQL behavior, not emitted in DDL ReferenceAction_CASCADE ReferenceAction = 1 ReferenceAction_SET_NULL ReferenceAction = 2 ReferenceAction_SET_DEFAULT ReferenceAction = 3 ReferenceAction_RESTRICT ReferenceAction = 4 )
func (ReferenceAction) Descriptor ¶ added in v0.3.0
func (ReferenceAction) Descriptor() protoreflect.EnumDescriptor
func (ReferenceAction) Enum ¶ added in v0.3.0
func (x ReferenceAction) Enum() *ReferenceAction
func (ReferenceAction) EnumDescriptor
deprecated
added in
v0.3.0
func (ReferenceAction) EnumDescriptor() ([]byte, []int)
Deprecated: Use ReferenceAction.Descriptor instead.
func (ReferenceAction) Number ¶ added in v0.3.0
func (x ReferenceAction) Number() protoreflect.EnumNumber
func (ReferenceAction) String ¶ added in v0.3.0
func (x ReferenceAction) String() string
func (ReferenceAction) Type ¶ added in v0.3.0
func (ReferenceAction) Type() protoreflect.EnumType
type Relation ¶
type Relation struct {
// Types that are valid to be assigned to Relation:
//
// *Relation_OneToMany
// *Relation_ManyToMany
// *Relation_HasOne
// *Relation_BelongsTo
Relation isRelation_Relation `protobuf_oneof:"relation"`
// contains filtered or unexported fields
}
func (*Relation) Descriptor
deprecated
func (*Relation) GetBelongsTo ¶ added in v0.2.0
func (*Relation) GetManyToMany ¶
func (x *Relation) GetManyToMany() *ManyToMany
func (*Relation) GetOneToMany ¶
func (*Relation) GetRelation ¶
func (x *Relation) GetRelation() isRelation_Relation
func (*Relation) ProtoMessage ¶
func (*Relation) ProtoMessage()
func (*Relation) ProtoReflect ¶
func (x *Relation) ProtoReflect() protoreflect.Message
type Relation_BelongsTo ¶ added in v0.2.0
type Relation_BelongsTo struct {
BelongsTo *BelongsTo `protobuf:"bytes,4,opt,name=belongs_to,json=belongsTo,proto3,oneof"`
}
type Relation_HasOne ¶ added in v0.2.0
type Relation_HasOne struct {
HasOne *HasOne `protobuf:"bytes,3,opt,name=has_one,json=hasOne,proto3,oneof"`
}
type Relation_ManyToMany ¶
type Relation_ManyToMany struct {
ManyToMany *ManyToMany `protobuf:"bytes,2,opt,name=many_to_many,json=manyToMany,proto3,oneof"`
}
type Relation_OneToMany ¶
type Relation_OneToMany struct {
OneToMany *OneToMany `protobuf:"bytes,1,opt,name=one_to_many,json=oneToMany,proto3,oneof"`
}
type Table ¶
type Table struct {
// Generate table schema for this message
Generate bool `protobuf:"varint,1,opt,name=generate,proto3" json:"generate,omitempty"`
// Override table name (default: snake_case of message name)
TableName *string `protobuf:"bytes,2,opt,name=table_name,json=tableName,proto3,oneof" json:"table_name,omitempty"`
// Virtual fields (columns not in proto message)
VirtualColumns []*VirtualColumn `protobuf:"bytes,3,rep,name=virtual_columns,json=virtualColumns,proto3" json:"virtual_columns,omitempty"`
// Table-level constraints (e.g., "CHECK (x > 0)")
Constraints []string `protobuf:"bytes,4,rep,name=constraints,proto3" json:"constraints,omitempty"`
// Indexes
Indexes []*Index `protobuf:"bytes,5,rep,name=indexes,proto3" json:"indexes,omitempty"`
// Composite unique constraints
// Example: unique: [{ columns: ["order_id", "product_id"] }]
Unique []*UniqueConstraint `protobuf:"bytes,6,rep,name=unique,proto3" json:"unique,omitempty"`
// Composite primary key (overrides column-level primary_key)
// Example: primary_key: { columns: ["order_id", "line_no"] }
PrimaryKey *PrimaryKey `protobuf:"bytes,7,opt,name=primary_key,json=primaryKey,proto3" json:"primary_key,omitempty"`
// PostgreSQL schema name (default: "public")
// When set, generates CREATE SCHEMA IF NOT EXISTS and uses qualified table names
// Example: schema: "auth" -> creates table "auth"."users"
Schema *string `protobuf:"bytes,8,opt,name=schema,proto3,oneof" json:"schema,omitempty"`
// Raw SQL statements executed after CREATE TABLE.
// Use {table} placeholder for schema-qualified table name.
// Example: post_statements: [
//
// "ALTER TABLE {table} ENABLE ROW LEVEL SECURITY",
// "GRANT ALL ON {table} TO authenticated"
//
// ]
PostStatements []string `protobuf:"bytes,9,rep,name=post_statements,json=postStatements,proto3" json:"post_statements,omitempty"`
// contains filtered or unexported fields
}
func (*Table) Descriptor
deprecated
func (*Table) GetConstraints ¶
func (*Table) GetGenerate ¶
func (*Table) GetIndexes ¶
func (*Table) GetPostStatements ¶ added in v0.3.0
func (*Table) GetPrimaryKey ¶
func (x *Table) GetPrimaryKey() *PrimaryKey
func (*Table) GetTableName ¶
func (*Table) GetUnique ¶
func (x *Table) GetUnique() []*UniqueConstraint
func (*Table) GetVirtualColumns ¶
func (x *Table) GetVirtualColumns() []*VirtualColumn
func (*Table) ProtoMessage ¶
func (*Table) ProtoMessage()
func (*Table) ProtoReflect ¶
func (x *Table) ProtoReflect() protoreflect.Message
type UniqueConstraint ¶
type UniqueConstraint struct {
// Constraint name (auto-generated if empty: uq_<table>_<columns>)
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Columns in the unique constraint
Columns []string `protobuf:"bytes,2,rep,name=columns,proto3" json:"columns,omitempty"`
// contains filtered or unexported fields
}
Composite unique constraint
func (*UniqueConstraint) Descriptor
deprecated
func (*UniqueConstraint) Descriptor() ([]byte, []int)
Deprecated: Use UniqueConstraint.ProtoReflect.Descriptor instead.
func (*UniqueConstraint) GetColumns ¶
func (x *UniqueConstraint) GetColumns() []string
func (*UniqueConstraint) GetName ¶
func (x *UniqueConstraint) GetName() string
func (*UniqueConstraint) ProtoMessage ¶
func (*UniqueConstraint) ProtoMessage()
func (*UniqueConstraint) ProtoReflect ¶
func (x *UniqueConstraint) ProtoReflect() protoreflect.Message
func (*UniqueConstraint) Reset ¶
func (x *UniqueConstraint) Reset()
func (*UniqueConstraint) String ¶
func (x *UniqueConstraint) String() string
type VirtualColumn ¶
type VirtualColumn struct {
SqlName string `protobuf:"bytes,1,opt,name=sql_name,json=sqlName,proto3" json:"sql_name,omitempty"`
SqlType string `protobuf:"bytes,2,opt,name=sql_type,json=sqlType,proto3" json:"sql_type,omitempty"` // e.g., "BIGINT", "TEXT", "TIMESTAMPTZ"
Constraints *Constraint `protobuf:"bytes,3,opt,name=constraints,proto3" json:"constraints,omitempty"`
IsNullable bool `protobuf:"varint,4,opt,name=is_nullable,json=isNullable,proto3" json:"is_nullable,omitempty"`
IsArray bool `protobuf:"varint,5,opt,name=is_array,json=isArray,proto3" json:"is_array,omitempty"`
// contains filtered or unexported fields
}
func (*VirtualColumn) Descriptor
deprecated
func (*VirtualColumn) Descriptor() ([]byte, []int)
Deprecated: Use VirtualColumn.ProtoReflect.Descriptor instead.
func (*VirtualColumn) GetConstraints ¶
func (x *VirtualColumn) GetConstraints() *Constraint
func (*VirtualColumn) GetIsArray ¶
func (x *VirtualColumn) GetIsArray() bool
func (*VirtualColumn) GetIsNullable ¶
func (x *VirtualColumn) GetIsNullable() bool
func (*VirtualColumn) GetSqlName ¶
func (x *VirtualColumn) GetSqlName() string
func (*VirtualColumn) GetSqlType ¶
func (x *VirtualColumn) GetSqlType() string
func (*VirtualColumn) ProtoMessage ¶
func (*VirtualColumn) ProtoMessage()
func (*VirtualColumn) ProtoReflect ¶
func (x *VirtualColumn) ProtoReflect() protoreflect.Message
func (*VirtualColumn) Reset ¶
func (x *VirtualColumn) Reset()
func (*VirtualColumn) String ¶
func (x *VirtualColumn) String() string