Documentation
¶
Index ¶
- func NewPostgreSQLMigrator(db *sql.DB, postgresqlDB *PostgreSQLDB) types.DatabaseMigrator
- type PostgreSQLCapabilities
- func (c *PostgreSQLCapabilities) GetBooleanLiteral(value bool) string
- func (c *PostgreSQLCapabilities) GetDriverType() types.DriverType
- func (c *PostgreSQLCapabilities) GetNullsOrderingSQL(direction types.Order, nullsFirst bool) string
- func (c *PostgreSQLCapabilities) GetPlaceholder(index int) string
- func (c *PostgreSQLCapabilities) GetSupportedSchemes() []string
- func (c *PostgreSQLCapabilities) IsNoSQL() bool
- func (c *PostgreSQLCapabilities) IsSystemIndex(indexName string) bool
- func (c *PostgreSQLCapabilities) IsSystemTable(tableName string) bool
- func (c *PostgreSQLCapabilities) NeedsTypeConversion() bool
- func (c *PostgreSQLCapabilities) QuoteIdentifier(name string) string
- func (c *PostgreSQLCapabilities) RequiresLimitForOffset() bool
- func (c *PostgreSQLCapabilities) SupportsAggregationPipeline() bool
- func (c *PostgreSQLCapabilities) SupportsArrayFields() bool
- func (c *PostgreSQLCapabilities) SupportsDefaultValues() bool
- func (c *PostgreSQLCapabilities) SupportsDistinctOn() bool
- func (c *PostgreSQLCapabilities) SupportsForeignKeys() bool
- func (c *PostgreSQLCapabilities) SupportsNestedDocuments() bool
- func (c *PostgreSQLCapabilities) SupportsReturning() bool
- func (c *PostgreSQLCapabilities) SupportsTransactions() bool
- type PostgreSQLDB
- func (p *PostgreSQLDB) Begin(ctx context.Context) (types.Transaction, error)
- func (p *PostgreSQLDB) Connect(ctx context.Context) error
- func (p *PostgreSQLDB) CreateModel(ctx context.Context, modelName string) error
- func (p *PostgreSQLDB) DropModel(ctx context.Context, modelName string) error
- func (p *PostgreSQLDB) Exec(query string, args ...any) (sql.Result, error)
- func (p *PostgreSQLDB) GetBooleanLiteral(value bool) string
- func (p *PostgreSQLDB) GetCapabilities() types.DriverCapabilities
- func (p *PostgreSQLDB) GetDriverType() string
- func (p *PostgreSQLDB) GetMigrator() types.DatabaseMigrator
- func (p *PostgreSQLDB) Model(modelName string) types.ModelQuery
- func (p *PostgreSQLDB) Query(query string, args ...any) (*sql.Rows, error)
- func (p *PostgreSQLDB) QueryRow(query string, args ...any) *sql.Row
- func (p *PostgreSQLDB) Raw(query string, args ...any) types.RawQuery
- func (p *PostgreSQLDB) SyncSchemas(ctx context.Context) error
- func (p *PostgreSQLDB) Transaction(ctx context.Context, fn func(tx types.Transaction) error) error
- type PostgreSQLMigrator
- func (m *PostgreSQLMigrator) ApplyMigration(sql string) error
- func (m *PostgreSQLMigrator) ConvertFieldToColumnInfo(field schema.Field) *types.ColumnInfo
- func (m *PostgreSQLMigrator) FormatDefaultValue(value any) string
- func (m *PostgreSQLMigrator) GenerateAddColumnSQL(tableName string, column any) (string, error)
- func (m *PostgreSQLMigrator) GenerateColumnDefinition(field schema.Field) string
- func (m *PostgreSQLMigrator) GenerateColumnDefinitionFromColumnInfo(column types.ColumnInfo) string
- func (m *PostgreSQLMigrator) GenerateCreateIndexSQL(tableName, indexName string, columns []string, unique bool) string
- func (m *PostgreSQLMigrator) GenerateCreateTableSQL(schema *schema.Schema) (string, error)
- func (m *PostgreSQLMigrator) GenerateDropColumnSQL(tableName, columnName string) ([]string, error)
- func (m *PostgreSQLMigrator) GenerateDropIndexSQL(indexName string) string
- func (m *PostgreSQLMigrator) GenerateDropTableSQL(tableName string) string
- func (m *PostgreSQLMigrator) GenerateModifyColumnSQL(change types.ColumnChange) ([]string, error)
- func (m *PostgreSQLMigrator) GetDatabaseType() string
- func (m *PostgreSQLMigrator) GetTableInfo(tableName string) (*types.TableInfo, error)
- func (m *PostgreSQLMigrator) GetTables() ([]string, error)
- func (m *PostgreSQLMigrator) IsPrimaryKeyIndex(indexName string) bool
- func (m *PostgreSQLMigrator) IsSystemIndex(indexName string) bool
- func (m *PostgreSQLMigrator) IsSystemTable(tableName string) bool
- func (m *PostgreSQLMigrator) MapDatabaseTypeToFieldType(dbType string) schema.FieldType
- func (m *PostgreSQLMigrator) MapFieldType(field schema.Field) string
- func (m *PostgreSQLMigrator) NormalizeDefaultToPrismaFunction(value any, fieldType schema.FieldType) (string, bool)
- func (m *PostgreSQLMigrator) ParseDefaultValue(value any, fieldType schema.FieldType) any
- type PostgreSQLMigratorWrapper
- func (w *PostgreSQLMigratorWrapper) CompareSchema(existingTable *types.TableInfo, desiredSchema any) (*types.MigrationPlan, error)
- func (w *PostgreSQLMigratorWrapper) GenerateAddColumnSQL(tableName string, field any) (string, error)
- func (w *PostgreSQLMigratorWrapper) GenerateCreateTableSQL(schemaInterface any) (string, error)
- func (w *PostgreSQLMigratorWrapper) GetSpecific() types.DatabaseSpecificMigrator
- func (w *PostgreSQLMigratorWrapper) IsSystemTable(tableName string) bool
- type PostgreSQLRawQuery
- type PostgreSQLTransaction
- func (t *PostgreSQLTransaction) Commit(ctx context.Context) error
- func (t *PostgreSQLTransaction) CreateMany(ctx context.Context, modelName string, data []any) (types.Result, error)
- func (t *PostgreSQLTransaction) DeleteMany(ctx context.Context, modelName string, condition types.Condition) (types.Result, error)
- func (t *PostgreSQLTransaction) Model(modelName string) types.ModelQuery
- func (t *PostgreSQLTransaction) Raw(query string, args ...any) types.RawQuery
- func (t *PostgreSQLTransaction) ReleaseSavepoint(ctx context.Context, name string) error
- func (t *PostgreSQLTransaction) Rollback(ctx context.Context) error
- func (t *PostgreSQLTransaction) RollbackTo(ctx context.Context, name string) error
- func (t *PostgreSQLTransaction) Savepoint(ctx context.Context, name string) error
- func (t *PostgreSQLTransaction) UpdateMany(ctx context.Context, modelName string, condition types.Condition, data any) (types.Result, error)
- type PostgreSQLTransactionDB
- func (t *PostgreSQLTransactionDB) Begin(ctx context.Context) (types.Transaction, error)
- func (t *PostgreSQLTransactionDB) Close() error
- func (t *PostgreSQLTransactionDB) Connect(ctx context.Context) error
- func (t *PostgreSQLTransactionDB) CreateModel(ctx context.Context, modelName string) error
- func (t *PostgreSQLTransactionDB) DropModel(ctx context.Context, modelName string) error
- func (t *PostgreSQLTransactionDB) Exec(query string, args ...any) (sql.Result, error)
- func (t *PostgreSQLTransactionDB) GetCapabilities() types.DriverCapabilities
- func (t *PostgreSQLTransactionDB) GetDriverType() string
- func (t *PostgreSQLTransactionDB) GetLogger() logger.Logger
- func (t *PostgreSQLTransactionDB) GetMigrator() types.DatabaseMigrator
- func (t *PostgreSQLTransactionDB) GetModelSchema(modelName string) (*schema.Schema, error)
- func (t *PostgreSQLTransactionDB) GetModels() []string
- func (t *PostgreSQLTransactionDB) GetSchema(modelName string) (*schema.Schema, error)
- func (t *PostgreSQLTransactionDB) LoadSchema(ctx context.Context, schemaContent string) error
- func (t *PostgreSQLTransactionDB) LoadSchemaFrom(ctx context.Context, filename string) error
- func (t *PostgreSQLTransactionDB) Model(modelName string) types.ModelQuery
- func (t *PostgreSQLTransactionDB) Ping(ctx context.Context) error
- func (t *PostgreSQLTransactionDB) Query(query string, args ...any) (*sql.Rows, error)
- func (t *PostgreSQLTransactionDB) QueryRow(query string, args ...any) *sql.Row
- func (t *PostgreSQLTransactionDB) Raw(query string, args ...any) types.RawQuery
- func (t *PostgreSQLTransactionDB) RegisterSchema(modelName string, s *schema.Schema) error
- func (t *PostgreSQLTransactionDB) ResolveFieldName(modelName, fieldName string) (string, error)
- func (t *PostgreSQLTransactionDB) ResolveFieldNames(modelName string, fieldNames []string) ([]string, error)
- func (t *PostgreSQLTransactionDB) ResolveTableName(modelName string) (string, error)
- func (t *PostgreSQLTransactionDB) SetLogger(l logger.Logger)
- func (t *PostgreSQLTransactionDB) SyncSchemas(ctx context.Context) error
- func (t *PostgreSQLTransactionDB) Transaction(ctx context.Context, fn func(tx types.Transaction) error) error
- type PostgreSQLTransactionRawQuery
- type PostgreSQLURIParser
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewPostgreSQLMigrator ¶
func NewPostgreSQLMigrator(db *sql.DB, postgresqlDB *PostgreSQLDB) types.DatabaseMigrator
NewPostgreSQLMigrator creates a new PostgreSQL migrator that implements types.DatabaseMigrator
Types ¶
type PostgreSQLCapabilities ¶
type PostgreSQLCapabilities struct{}
PostgreSQLCapabilities implements types.DriverCapabilities for PostgreSQL
func NewPostgreSQLCapabilities ¶
func NewPostgreSQLCapabilities() *PostgreSQLCapabilities
NewPostgreSQLCapabilities creates new PostgreSQL capabilities
func (*PostgreSQLCapabilities) GetBooleanLiteral ¶
func (c *PostgreSQLCapabilities) GetBooleanLiteral(value bool) string
func (*PostgreSQLCapabilities) GetDriverType ¶
func (c *PostgreSQLCapabilities) GetDriverType() types.DriverType
func (*PostgreSQLCapabilities) GetNullsOrderingSQL ¶
func (c *PostgreSQLCapabilities) GetNullsOrderingSQL(direction types.Order, nullsFirst bool) string
func (*PostgreSQLCapabilities) GetPlaceholder ¶
func (c *PostgreSQLCapabilities) GetPlaceholder(index int) string
func (*PostgreSQLCapabilities) GetSupportedSchemes ¶
func (c *PostgreSQLCapabilities) GetSupportedSchemes() []string
func (*PostgreSQLCapabilities) IsNoSQL ¶
func (c *PostgreSQLCapabilities) IsNoSQL() bool
func (*PostgreSQLCapabilities) IsSystemIndex ¶
func (c *PostgreSQLCapabilities) IsSystemIndex(indexName string) bool
func (*PostgreSQLCapabilities) IsSystemTable ¶
func (c *PostgreSQLCapabilities) IsSystemTable(tableName string) bool
func (*PostgreSQLCapabilities) NeedsTypeConversion ¶
func (c *PostgreSQLCapabilities) NeedsTypeConversion() bool
func (*PostgreSQLCapabilities) QuoteIdentifier ¶
func (c *PostgreSQLCapabilities) QuoteIdentifier(name string) string
func (*PostgreSQLCapabilities) RequiresLimitForOffset ¶
func (c *PostgreSQLCapabilities) RequiresLimitForOffset() bool
func (*PostgreSQLCapabilities) SupportsAggregationPipeline ¶
func (c *PostgreSQLCapabilities) SupportsAggregationPipeline() bool
func (*PostgreSQLCapabilities) SupportsArrayFields ¶
func (c *PostgreSQLCapabilities) SupportsArrayFields() bool
func (*PostgreSQLCapabilities) SupportsDefaultValues ¶
func (c *PostgreSQLCapabilities) SupportsDefaultValues() bool
func (*PostgreSQLCapabilities) SupportsDistinctOn ¶
func (c *PostgreSQLCapabilities) SupportsDistinctOn() bool
func (*PostgreSQLCapabilities) SupportsForeignKeys ¶ added in v0.6.0
func (c *PostgreSQLCapabilities) SupportsForeignKeys() bool
func (*PostgreSQLCapabilities) SupportsNestedDocuments ¶
func (c *PostgreSQLCapabilities) SupportsNestedDocuments() bool
func (*PostgreSQLCapabilities) SupportsReturning ¶
func (c *PostgreSQLCapabilities) SupportsReturning() bool
func (*PostgreSQLCapabilities) SupportsTransactions ¶
func (c *PostgreSQLCapabilities) SupportsTransactions() bool
type PostgreSQLDB ¶
PostgreSQLDB implements the Database interface for PostgreSQL
func NewPostgreSQLDB ¶
func NewPostgreSQLDB(nativeURI string) (*PostgreSQLDB, error)
NewPostgreSQLDB creates a new PostgreSQL database instance The uri parameter should be a native PostgreSQL DSN (e.g., "host=localhost port=5432 user=user dbname=db")
func (*PostgreSQLDB) Begin ¶
func (p *PostgreSQLDB) Begin(ctx context.Context) (types.Transaction, error)
Begin starts a new transaction
func (*PostgreSQLDB) Connect ¶
func (p *PostgreSQLDB) Connect(ctx context.Context) error
Connect establishes a connection to the PostgreSQL database
func (*PostgreSQLDB) CreateModel ¶
func (p *PostgreSQLDB) CreateModel(ctx context.Context, modelName string) error
CreateModel creates a table from the registered schema
func (*PostgreSQLDB) DropModel ¶
func (p *PostgreSQLDB) DropModel(ctx context.Context, modelName string) error
DropModel drops a table
func (*PostgreSQLDB) GetBooleanLiteral ¶
func (p *PostgreSQLDB) GetBooleanLiteral(value bool) string
GetBooleanLiteral returns PostgreSQL-specific boolean literal
func (*PostgreSQLDB) GetCapabilities ¶
func (p *PostgreSQLDB) GetCapabilities() types.DriverCapabilities
GetCapabilities returns driver capabilities
func (*PostgreSQLDB) GetDriverType ¶
func (p *PostgreSQLDB) GetDriverType() string
GetDriverType returns the database driver type
func (*PostgreSQLDB) GetMigrator ¶
func (p *PostgreSQLDB) GetMigrator() types.DatabaseMigrator
GetMigrator returns the migrator for this database
func (*PostgreSQLDB) Model ¶
func (p *PostgreSQLDB) Model(modelName string) types.ModelQuery
Model creates a new model query
func (*PostgreSQLDB) QueryRow ¶
func (p *PostgreSQLDB) QueryRow(query string, args ...any) *sql.Row
QueryRow executes a raw SQL query and returns a single row
func (*PostgreSQLDB) Raw ¶
func (p *PostgreSQLDB) Raw(query string, args ...any) types.RawQuery
Raw creates a raw query
func (*PostgreSQLDB) SyncSchemas ¶
func (p *PostgreSQLDB) SyncSchemas(ctx context.Context) error
SyncSchemas synchronizes all loaded schemas with the database
func (*PostgreSQLDB) Transaction ¶
func (p *PostgreSQLDB) Transaction(ctx context.Context, fn func(tx types.Transaction) error) error
Transaction executes a function within a transaction
type PostgreSQLMigrator ¶
type PostgreSQLMigrator struct {
// contains filtered or unexported fields
}
PostgreSQLMigrator implements types.DatabaseSpecificMigrator for PostgreSQL
func (*PostgreSQLMigrator) ApplyMigration ¶
func (m *PostgreSQLMigrator) ApplyMigration(sql string) error
ApplyMigration applies a migration SQL statement
func (*PostgreSQLMigrator) ConvertFieldToColumnInfo ¶
func (m *PostgreSQLMigrator) ConvertFieldToColumnInfo(field schema.Field) *types.ColumnInfo
ConvertFieldToColumnInfo converts a schema field to column info
func (*PostgreSQLMigrator) FormatDefaultValue ¶
func (m *PostgreSQLMigrator) FormatDefaultValue(value any) string
FormatDefaultValue formats a default value for PostgreSQL
func (*PostgreSQLMigrator) GenerateAddColumnSQL ¶
func (m *PostgreSQLMigrator) GenerateAddColumnSQL(tableName string, column any) (string, error)
GenerateAddColumnSQL generates ALTER TABLE ADD COLUMN SQL
func (*PostgreSQLMigrator) GenerateColumnDefinition ¶
func (m *PostgreSQLMigrator) GenerateColumnDefinition(field schema.Field) string
GenerateColumnDefinition generates column definition from schema field
func (*PostgreSQLMigrator) GenerateColumnDefinitionFromColumnInfo ¶
func (m *PostgreSQLMigrator) GenerateColumnDefinitionFromColumnInfo(column types.ColumnInfo) string
GenerateColumnDefinitionFromColumnInfo generates column definition from ColumnInfo
func (*PostgreSQLMigrator) GenerateCreateIndexSQL ¶
func (m *PostgreSQLMigrator) GenerateCreateIndexSQL(tableName, indexName string, columns []string, unique bool) string
GenerateCreateIndexSQL generates CREATE INDEX SQL
func (*PostgreSQLMigrator) GenerateCreateTableSQL ¶
func (m *PostgreSQLMigrator) GenerateCreateTableSQL(schema *schema.Schema) (string, error)
GenerateCreateTableSQL generates CREATE TABLE SQL
func (*PostgreSQLMigrator) GenerateDropColumnSQL ¶
func (m *PostgreSQLMigrator) GenerateDropColumnSQL(tableName, columnName string) ([]string, error)
GenerateDropColumnSQL generates ALTER TABLE DROP COLUMN SQL
func (*PostgreSQLMigrator) GenerateDropIndexSQL ¶
func (m *PostgreSQLMigrator) GenerateDropIndexSQL(indexName string) string
GenerateDropIndexSQL generates DROP INDEX SQL
func (*PostgreSQLMigrator) GenerateDropTableSQL ¶
func (m *PostgreSQLMigrator) GenerateDropTableSQL(tableName string) string
GenerateDropTableSQL generates DROP TABLE SQL
func (*PostgreSQLMigrator) GenerateModifyColumnSQL ¶
func (m *PostgreSQLMigrator) GenerateModifyColumnSQL(change types.ColumnChange) ([]string, error)
GenerateModifyColumnSQL generates ALTER TABLE ALTER COLUMN SQL for PostgreSQL
func (*PostgreSQLMigrator) GetDatabaseType ¶
func (m *PostgreSQLMigrator) GetDatabaseType() string
GetDatabaseType returns the database type
func (*PostgreSQLMigrator) GetTableInfo ¶
func (m *PostgreSQLMigrator) GetTableInfo(tableName string) (*types.TableInfo, error)
GetTableInfo returns information about a specific table
func (*PostgreSQLMigrator) GetTables ¶
func (m *PostgreSQLMigrator) GetTables() ([]string, error)
GetTables returns all table names in the database
func (*PostgreSQLMigrator) IsPrimaryKeyIndex ¶ added in v0.6.0
func (m *PostgreSQLMigrator) IsPrimaryKeyIndex(indexName string) bool
IsPrimaryKeyIndex checks if an index name indicates it's a primary key index
func (*PostgreSQLMigrator) IsSystemIndex ¶
func (m *PostgreSQLMigrator) IsSystemIndex(indexName string) bool
IsSystemIndex checks if an index is a system-generated index in PostgreSQL
func (*PostgreSQLMigrator) IsSystemTable ¶
func (m *PostgreSQLMigrator) IsSystemTable(tableName string) bool
IsSystemTable checks if a table is a system table in PostgreSQL
func (*PostgreSQLMigrator) MapDatabaseTypeToFieldType ¶ added in v0.6.0
func (m *PostgreSQLMigrator) MapDatabaseTypeToFieldType(dbType string) schema.FieldType
MapDatabaseTypeToFieldType converts PostgreSQL column types to schema field types
func (*PostgreSQLMigrator) MapFieldType ¶
func (m *PostgreSQLMigrator) MapFieldType(field schema.Field) string
MapFieldType maps a schema field to PostgreSQL column type
func (*PostgreSQLMigrator) NormalizeDefaultToPrismaFunction ¶ added in v0.6.0
func (m *PostgreSQLMigrator) NormalizeDefaultToPrismaFunction(value any, fieldType schema.FieldType) (string, bool)
NormalizeDefaultToPrismaFunction converts normalized defaults to Prisma function names
func (*PostgreSQLMigrator) ParseDefaultValue ¶ added in v0.6.0
func (m *PostgreSQLMigrator) ParseDefaultValue(value any, fieldType schema.FieldType) any
ParseDefaultValue parses PostgreSQL-specific default values to normalized form
type PostgreSQLMigratorWrapper ¶
type PostgreSQLMigratorWrapper struct {
*base.BaseMigrator
// contains filtered or unexported fields
}
PostgreSQLMigratorWrapper wraps PostgreSQLMigrator with BaseMigrator to implement types.DatabaseMigrator
func (*PostgreSQLMigratorWrapper) CompareSchema ¶
func (w *PostgreSQLMigratorWrapper) CompareSchema(existingTable *types.TableInfo, desiredSchema any) (*types.MigrationPlan, error)
CompareSchema wraps the BaseMigrator's CompareSchema to match the DatabaseMigrator interface
func (*PostgreSQLMigratorWrapper) GenerateAddColumnSQL ¶
func (w *PostgreSQLMigratorWrapper) GenerateAddColumnSQL(tableName string, field any) (string, error)
GenerateAddColumnSQL wraps to match the DatabaseMigrator interface
func (*PostgreSQLMigratorWrapper) GenerateCreateTableSQL ¶
func (w *PostgreSQLMigratorWrapper) GenerateCreateTableSQL(schemaInterface any) (string, error)
GenerateCreateTableSQL wraps to match the DatabaseMigrator interface
func (*PostgreSQLMigratorWrapper) GetSpecific ¶ added in v0.6.0
func (w *PostgreSQLMigratorWrapper) GetSpecific() types.DatabaseSpecificMigrator
GetSpecific returns the specific migrator implementation
func (*PostgreSQLMigratorWrapper) IsSystemTable ¶
func (w *PostgreSQLMigratorWrapper) IsSystemTable(tableName string) bool
IsSystemTable delegates to the specific implementation
type PostgreSQLRawQuery ¶
type PostgreSQLRawQuery struct {
// contains filtered or unexported fields
}
PostgreSQLRawQuery implements the RawQuery interface for PostgreSQL
type PostgreSQLTransaction ¶
type PostgreSQLTransaction struct {
// contains filtered or unexported fields
}
PostgreSQLTransaction implements the Transaction interface for PostgreSQL
func (*PostgreSQLTransaction) Commit ¶
func (t *PostgreSQLTransaction) Commit(ctx context.Context) error
Commit commits the transaction
func (*PostgreSQLTransaction) CreateMany ¶
func (t *PostgreSQLTransaction) CreateMany(ctx context.Context, modelName string, data []any) (types.Result, error)
CreateMany creates multiple records within the transaction
func (*PostgreSQLTransaction) DeleteMany ¶
func (t *PostgreSQLTransaction) DeleteMany(ctx context.Context, modelName string, condition types.Condition) (types.Result, error)
DeleteMany deletes multiple records within the transaction
func (*PostgreSQLTransaction) Model ¶
func (t *PostgreSQLTransaction) Model(modelName string) types.ModelQuery
Model creates a model query within the transaction
func (*PostgreSQLTransaction) Raw ¶
func (t *PostgreSQLTransaction) Raw(query string, args ...any) types.RawQuery
Raw creates a raw query within the transaction
func (*PostgreSQLTransaction) ReleaseSavepoint ¶
func (t *PostgreSQLTransaction) ReleaseSavepoint(ctx context.Context, name string) error
ReleaseSavepoint releases the savepoint with the given name
func (*PostgreSQLTransaction) Rollback ¶
func (t *PostgreSQLTransaction) Rollback(ctx context.Context) error
Rollback rolls back the transaction
func (*PostgreSQLTransaction) RollbackTo ¶
func (t *PostgreSQLTransaction) RollbackTo(ctx context.Context, name string) error
RollbackTo rolls back to the savepoint with the given name
type PostgreSQLTransactionDB ¶
type PostgreSQLTransactionDB struct {
*PostgreSQLDB
// contains filtered or unexported fields
}
PostgreSQLTransactionDB wraps PostgreSQLDB for transaction context
func (*PostgreSQLTransactionDB) Begin ¶
func (t *PostgreSQLTransactionDB) Begin(ctx context.Context) (types.Transaction, error)
Begin within a transaction is not supported
func (*PostgreSQLTransactionDB) Close ¶
func (t *PostgreSQLTransactionDB) Close() error
Close is not supported within a transaction
func (*PostgreSQLTransactionDB) Connect ¶
func (t *PostgreSQLTransactionDB) Connect(ctx context.Context) error
Connect is not supported within a transaction
func (*PostgreSQLTransactionDB) CreateModel ¶
func (t *PostgreSQLTransactionDB) CreateModel(ctx context.Context, modelName string) error
CreateModel is not supported within a transaction
func (*PostgreSQLTransactionDB) DropModel ¶
func (t *PostgreSQLTransactionDB) DropModel(ctx context.Context, modelName string) error
DropModel is not supported within a transaction
func (*PostgreSQLTransactionDB) GetCapabilities ¶
func (t *PostgreSQLTransactionDB) GetCapabilities() types.DriverCapabilities
GetCapabilities returns driver capabilities
func (*PostgreSQLTransactionDB) GetDriverType ¶
func (t *PostgreSQLTransactionDB) GetDriverType() string
GetDriverType returns the database driver type
func (*PostgreSQLTransactionDB) GetLogger ¶ added in v0.6.0
func (t *PostgreSQLTransactionDB) GetLogger() logger.Logger
GetLogger delegates to the main database
func (*PostgreSQLTransactionDB) GetMigrator ¶
func (t *PostgreSQLTransactionDB) GetMigrator() types.DatabaseMigrator
GetMigrator is not supported within a transaction
func (*PostgreSQLTransactionDB) GetModelSchema ¶
func (t *PostgreSQLTransactionDB) GetModelSchema(modelName string) (*schema.Schema, error)
GetModelSchema returns the schema interface for a model
func (*PostgreSQLTransactionDB) GetModels ¶
func (t *PostgreSQLTransactionDB) GetModels() []string
GetModels returns all registered model names
func (*PostgreSQLTransactionDB) GetSchema ¶
func (t *PostgreSQLTransactionDB) GetSchema(modelName string) (*schema.Schema, error)
GetSchema returns the schema for a model
func (*PostgreSQLTransactionDB) LoadSchema ¶
func (t *PostgreSQLTransactionDB) LoadSchema(ctx context.Context, schemaContent string) error
LoadSchema is not supported within a transaction
func (*PostgreSQLTransactionDB) LoadSchemaFrom ¶
func (t *PostgreSQLTransactionDB) LoadSchemaFrom(ctx context.Context, filename string) error
LoadSchemaFrom is not supported within a transaction
func (*PostgreSQLTransactionDB) Model ¶
func (t *PostgreSQLTransactionDB) Model(modelName string) types.ModelQuery
Model creates a model query within the transaction
func (*PostgreSQLTransactionDB) Ping ¶
func (t *PostgreSQLTransactionDB) Ping(ctx context.Context) error
Ping is not supported within a transaction
func (*PostgreSQLTransactionDB) Query ¶
Query executes a raw SQL query that returns rows within the transaction
func (*PostgreSQLTransactionDB) QueryRow ¶
func (t *PostgreSQLTransactionDB) QueryRow(query string, args ...any) *sql.Row
QueryRow executes a raw SQL query that returns a single row within the transaction
func (*PostgreSQLTransactionDB) Raw ¶
func (t *PostgreSQLTransactionDB) Raw(query string, args ...any) types.RawQuery
Raw creates a raw query within the transaction
func (*PostgreSQLTransactionDB) RegisterSchema ¶
func (t *PostgreSQLTransactionDB) RegisterSchema(modelName string, s *schema.Schema) error
RegisterSchema registers a schema with the database
func (*PostgreSQLTransactionDB) ResolveFieldName ¶
func (t *PostgreSQLTransactionDB) ResolveFieldName(modelName, fieldName string) (string, error)
ResolveFieldName resolves schema field name to column name
func (*PostgreSQLTransactionDB) ResolveFieldNames ¶
func (t *PostgreSQLTransactionDB) ResolveFieldNames(modelName string, fieldNames []string) ([]string, error)
ResolveFieldNames resolves multiple schema field names to column names
func (*PostgreSQLTransactionDB) ResolveTableName ¶
func (t *PostgreSQLTransactionDB) ResolveTableName(modelName string) (string, error)
ResolveTableName resolves model name to table name
func (*PostgreSQLTransactionDB) SetLogger ¶ added in v0.6.0
func (t *PostgreSQLTransactionDB) SetLogger(l logger.Logger)
SetLogger delegates to the main database
func (*PostgreSQLTransactionDB) SyncSchemas ¶
func (t *PostgreSQLTransactionDB) SyncSchemas(ctx context.Context) error
SyncSchemas is not supported within a transaction
func (*PostgreSQLTransactionDB) Transaction ¶
func (t *PostgreSQLTransactionDB) Transaction(ctx context.Context, fn func(tx types.Transaction) error) error
Transaction within a transaction is not supported
type PostgreSQLTransactionRawQuery ¶
type PostgreSQLTransactionRawQuery struct {
// contains filtered or unexported fields
}
PostgreSQLTransactionRawQuery implements RawQuery for transactions
type PostgreSQLURIParser ¶
type PostgreSQLURIParser struct{}
PostgreSQLURIParser implements URIParser for PostgreSQL
func NewPostgreSQLURIParser ¶
func NewPostgreSQLURIParser() *PostgreSQLURIParser
NewPostgreSQLURIParser creates a new PostgreSQL URI parser
func (*PostgreSQLURIParser) GetDriverType ¶
func (p *PostgreSQLURIParser) GetDriverType() string
GetDriverType returns the driver type this parser is for
func (*PostgreSQLURIParser) GetSupportedSchemes ¶
func (p *PostgreSQLURIParser) GetSupportedSchemes() []string
GetSupportedSchemes returns the URI schemes supported by this parser