Você não pode usar espaços reservados em instruções preparadas para identificadores (nomes de coluna/tabela/banco de dados/função etc). Você só pode usá-los para valores.
CREATE TABLE noteshareproject.:title
// ^^^^^^ this will not work
Você terá que limpar manualmente
$title
então ele pode ser usado diretamente na string se você quiser fazer isso. Observe também que um DDL instrução como
CREATE TABLE
não pode ser preparado, então não faz sentido usar prepare()
. Você também pode usar query()
ou exec()
. Eu também me pergunto se o fato de você querer fazer isso é um indicador de design de banco de dados ruim - é improvável que um requisito para várias tabelas de estrutura idêntica seja uma maneira adequada de armazenar suas informações, embora sem saber mais sobre seu aplicação é impossível dizer com certeza.