|
Lightweight 0.20260213.0
|
Classes and functions for building SQL queries. More...
Classes | |
| class | Lightweight::SqlQueryBuilder |
| API Entry point for building SQL queries. More... | |
| struct | Lightweight::SqlWildcardType |
| SqlWildcardType is a placeholder for an explicit wildcard input parameter in a SQL query. More... | |
| struct | Lightweight::SqlQualifiedTableColumnName |
| SqlQualifiedTableColumnName represents a column name qualified with a table name. More... | |
| class | Lightweight::SqlJoinConditionBuilder |
| Query builder for building JOIN conditions. More... | |
| class | Lightweight::SqlWhereClauseBuilder< Derived > |
| class | Lightweight::SqlDeleteQueryBuilder |
| Query builder for building DELETE FROM ... queries. More... | |
| class | Lightweight::SqlInsertQueryBuilder |
| Query builder for building INSERT INTO ... queries. More... | |
| class | Lightweight::SqlCreateTableQueryBuilder |
| Query builder for building CREATE TABLE queries. More... | |
| class | Lightweight::SqlAlterTableQueryBuilder |
| Query builder for building ALTER TABLE queries. More... | |
| class | Lightweight::SqlMigrationInsertBuilder |
| Query builder for building INSERT queries in migrations. More... | |
| class | Lightweight::SqlMigrationUpdateBuilder |
| Query builder for building UPDATE queries in migrations. More... | |
| class | Lightweight::SqlMigrationDeleteBuilder |
| Query builder for building DELETE queries in migrations. More... | |
| class | Lightweight::SqlMigrationQueryBuilder |
| Query builder for building SQL migration queries. More... | |
| struct | Lightweight::SqlForeignKeyReferenceDefinition |
| Represents a foreign key reference definition. More... | |
| struct | Lightweight::SqlColumnDeclaration |
| Represents a SQL column declaration. More... | |
| struct | Lightweight::SqlCompositeForeignKeyConstraint |
| Represents a composite foreign key constraint. More... | |
| struct | Lightweight::SqlAlterTablePlan |
| Represents a SQL ALTER TABLE plan on a given table. More... | |
| struct | Lightweight::SqlDropTablePlan |
| Represents a SQL DROP TABLE plan. More... | |
| struct | Lightweight::SqlRawSqlPlan |
| Represents a raw SQL plan. More... | |
| struct | Lightweight::SqlInsertDataPlan |
| Represents a SQL INSERT data plan for migrations. More... | |
| struct | Lightweight::SqlUpdateDataPlan |
| Represents a SQL UPDATE data plan for migrations. More... | |
| struct | Lightweight::SqlDeleteDataPlan |
| Represents a SQL DELETE data plan for migrations. More... | |
| struct | Lightweight::SqlCreateIndexPlan |
| Represents a SQL CREATE INDEX plan for migrations. More... | |
| struct | Lightweight::SqlMigrationPlan |
| Represents a SQL migration plan. More... | |
Typedefs | |
| using | Lightweight::SqlAlterTableCommand = std::variant< SqlAlterTableCommands::RenameTable, SqlAlterTableCommands::AddColumn, SqlAlterTableCommands::AddColumnIfNotExists, SqlAlterTableCommands::AlterColumn, SqlAlterTableCommands::AddIndex, SqlAlterTableCommands::RenameColumn, SqlAlterTableCommands::DropColumn, SqlAlterTableCommands::DropColumnIfExists, SqlAlterTableCommands::DropIndex, SqlAlterTableCommands::DropIndexIfExists, SqlAlterTableCommands::AddForeignKey, SqlAlterTableCommands::AddCompositeForeignKey, SqlAlterTableCommands::DropForeignKey > |
| Represents a single SQL ALTER TABLE command. | |
| using | Lightweight::SqlMigrationPlanElement = std::variant< SqlCreateTablePlan, SqlAlterTablePlan, SqlDropTablePlan, SqlCreateIndexPlan, SqlRawSqlPlan, SqlInsertDataPlan, SqlUpdateDataPlan, SqlDeleteDataPlan > |
| Represents a single SQL migration plan element. | |
Enumerations | |
| enum class | Lightweight::IndexType : std::uint8_t { IndexType::NonUnique , IndexType::Unique } |
| Index type for simplified CreateIndex API. More... | |
| enum class | Lightweight::SqlPrimaryKeyType : uint8_t { NONE , MANUAL , AUTO_INCREMENT , GUID } |
| Represents a primary key type. More... | |
Functions | |
| LIGHTWEIGHT_API std::vector< std::string > | Lightweight::ToSql (SqlQueryFormatter const &formatter, SqlMigrationPlanElement const &element) |
| LIGHTWEIGHT_API std::vector< std::string > | Lightweight::ToSql (SqlQueryFormatter const &formatter, std::vector< SqlMigrationPlan > const &plans) |
| Formats the given SQL migration plan as a list of SQL statements. | |
Variables | |
| template<typename T > | |
| constexpr auto | Lightweight::SqlColumnTypeDefinitionOf = detail::SqlColumnTypeDefinitionOf<T>::value |
| Represents a SQL column type definition of T. | |
Classes and functions for building SQL queries.
The query builder is a high level API for building SQL queries using high level C++ syntax.
| using Lightweight::SqlAlterTableCommand = typedef std::variant<SqlAlterTableCommands::RenameTable, SqlAlterTableCommands::AddColumn, SqlAlterTableCommands::AddColumnIfNotExists, SqlAlterTableCommands::AlterColumn, SqlAlterTableCommands::AddIndex, SqlAlterTableCommands::RenameColumn, SqlAlterTableCommands::DropColumn, SqlAlterTableCommands::DropColumnIfExists, SqlAlterTableCommands::DropIndex, SqlAlterTableCommands::DropIndexIfExists, SqlAlterTableCommands::AddForeignKey, SqlAlterTableCommands::AddCompositeForeignKey, SqlAlterTableCommands::DropForeignKey> |
Represents a single SQL ALTER TABLE command.
Definition at line 362 of file MigrationPlan.hpp.
| using Lightweight::SqlMigrationPlanElement = typedef std::variant< SqlCreateTablePlan, SqlAlterTablePlan, SqlDropTablePlan, SqlCreateIndexPlan, SqlRawSqlPlan, SqlInsertDataPlan, SqlUpdateDataPlan, SqlDeleteDataPlan > |
Represents a single SQL migration plan element.
This variant represents a single SQL migration plan element.
Definition at line 518 of file MigrationPlan.hpp.
|
strong |
Index type for simplified CreateIndex API.
| Enumerator | |
|---|---|
| NonUnique | Regular (non-unique) index. |
| Unique | Unique index. |
Definition at line 19 of file Migrate.hpp.
|
strong |
Represents a primary key type.
This enumeration represents the primary key type of a column.
Definition at line 193 of file MigrationPlan.hpp.
| LIGHTWEIGHT_API std::vector< std::string > Lightweight::ToSql | ( | SqlQueryFormatter const & | formatter, |
| SqlMigrationPlanElement const & | element | ||
| ) |
Formats the given SQL migration plan element as a list of SQL statements.
| formatter | The SQL query formatter to use. |
| element | The SQL migration plan element to format. |
| LIGHTWEIGHT_API std::vector< std::string > Lightweight::ToSql | ( | SqlQueryFormatter const & | formatter, |
| std::vector< SqlMigrationPlan > const & | plans | ||
| ) |
Formats the given SQL migration plan as a list of SQL statements.
| formatter | The SQL query formatter to use. |
| plans | The SQL migration plans to format. |
|
constexpr |
Represents a SQL column type definition of T.
Definition at line 186 of file MigrationPlan.hpp.
Referenced by Lightweight::SqlAlterTableQueryBuilder::AddColumn(), and Lightweight::SqlAlterTableQueryBuilder::AddNotRequiredColumn().