Не можете да използвате контейнери в подготвени изрази за идентификатори (имена на колона/таблица/база данни/функция и т.н.). Можете да ги използвате само за стойности.
CREATE TABLE noteshareproject.:title
// ^^^^^^ this will not work
Ще трябва ръчно да дезинфекцирате $title
така че може да се използва директно в низа, ако искате да направите това.
Имайте предвид също, че DDL
израз като CREATE TABLE
не може да се подготви, така че няма смисъл да се използва prepare()
. Може и просто да използвате query()
или exec()
.
Също така се чудя дали фактът, че изобщо искате да направите това, е индикатор за лош дизайн на база данни - малко вероятно е изискването за множество таблици с идентична структура да е правилен начин за съхраняване на вашата информация, макар и без да знаете повече за вашата приложение е невъзможно да се каже със сигурност.