Стоит ли пытаться добавить в программу возможность пользователю самому добавлять свои собственные поля в базу данных? Универсальная схема БД ведёт к жутким и непроизводительным запросам, поэтому её я решил не использовать. Может, стоит реализовать добавление дополнительных полей с помощью обычных запросов ALTER TABLE?