Pular para o conteúdo principal

DDL — ALTER TABLE DROP COLUMN (ESP-020)

Rastreio: entrega ESP-020 / ADR-020, issue #34. Sem entrada em CHANGELOG.md até /release.

A partir da entrega ESP-020 / ADR-020, o FluentSQL gera texto SQL para ALTER TABLE … DROP … com uma coluna alvo por comando AsString. O pacote não executa DDL.

Ponto de entrada

  • Schema(ADialect).AlterTableDrop('NOME_TABELA') (unit FluentSQL), devolvendo IFluentDDLAlterTableDropBuilder (FluentSQL.Interfaces). Tambem suportado via CreateFluentDDLAlterTableDropColumn.

Chame um único DropColumn('NOME_COLUNA') e finalize com AsString. Uma segunda chamada a DropColumn na mesma cadeia levanta EArgumentException com mensagem estável (regra ESP-020).

Dialetos suportados nesta vertical

DialetoConstante
FirebirddbnFirebird
PostgreSQLdbnPostgreSQL

Outros motores levantam ENotSupportedException com mensagem que referencia ESP-020 até extensão explícita do mapeamento.

Forma canónica da string

DialetoForma
FirebirdALTER TABLE <tabela> DROP <coluna>sem a palavra COLUMN entre DROP e o identificador (ADR-020).
PostgreSQLALTER TABLE <tabela> DROP COLUMN <coluna> — com COLUMN explícito (ADR-020).

Limitações declaradas

Leitura no código

  • FluentSQL.DDL.pas — builder (NewFluentDDLAlterTableDropColumn).
  • FluentSQL.DDL.Serialize.pasDDLAlterTableDropColumnSQL.