feat(migration): add support for altering column nullability
* Implement ExecuteAlterColumnNullability function * Create alter_column_nullability template * Add test for altering column nullability behavior
This commit is contained in:
@@ -116,6 +116,14 @@ type AlterColumnDefaultData struct {
|
||||
DefaultValue string
|
||||
}
|
||||
|
||||
// AlterColumnNullabilityData contains data for alter column nullability template
|
||||
type AlterColumnNullabilityData struct {
|
||||
SchemaName string
|
||||
TableName string
|
||||
ColumnName string
|
||||
NotNull bool
|
||||
}
|
||||
|
||||
// CreatePrimaryKeyData contains data for create primary key template
|
||||
type CreatePrimaryKeyData struct {
|
||||
SchemaName string
|
||||
@@ -331,6 +339,16 @@ func (te *TemplateExecutor) ExecuteAlterColumnDefault(data AlterColumnDefaultDat
|
||||
return buf.String(), nil
|
||||
}
|
||||
|
||||
// ExecuteAlterColumnNullability executes the alter column nullability template
|
||||
func (te *TemplateExecutor) ExecuteAlterColumnNullability(data AlterColumnNullabilityData) (string, error) {
|
||||
var buf bytes.Buffer
|
||||
err := te.templates.ExecuteTemplate(&buf, "alter_column_nullability.tmpl", data)
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("failed to execute alter_column_nullability template: %w", err)
|
||||
}
|
||||
return buf.String(), nil
|
||||
}
|
||||
|
||||
// ExecuteCreatePrimaryKey executes the create primary key template
|
||||
func (te *TemplateExecutor) ExecuteCreatePrimaryKey(data CreatePrimaryKeyData) (string, error) {
|
||||
var buf bytes.Buffer
|
||||
|
||||
Reference in New Issue
Block a user