Я работаю над фреймворком на PHP, часть этой работы по фреймворку - написание кода SQL для генерации новых столбцов MySQL.
Какой самый элегантный способ передать набор параметров для столбца, а затем превратить его в код SQL? В качестве примера приведу пример YAML, который указывает параметры для создания столбца varchar:
- type: character
data-type:
type: varchar
length: 255
decimals: null
unsigned: null
zerofill: null
collate: utf8_unicode_ci
character-set: utf8
binary: false
spatial-type: null
values: null
nullify: true
default: null
increment: false
unique: false
primary: false
comment: This is a small general text field.
format: default
storage: default
Мои конструктивные ограничения следующие:
- YAML не может содержать синтаксис SQL
- Код PHP должен быть максимально кратким.