phpMyAdmin
 sql >> Base de Dados >  >> Database Tools >> phpMyAdmin

Erro de sintaxe de inserção do PHP no MySQL


TableNames são identificadores, portanto, não devem ser citados com aspas simples. Como o tableName que você usou não é uma palavra-chave reservada, você pode simplesmente remover essas aspas,
INSERT INTO student (FirstName, LastName....

Quando você envolve algo com aspas simples, isso força esse objeto a se tornar um literal de string. Portanto, quando os identificadores são agrupados com aspas simples, isso significa que eles não são mais identificadores.

O servidor lança uma exceção porque INSERT INTO espera um identificador e não um literal de string.

Quando você acidentalmente usou um nome de tabela que é um MySQL reservado Palavra-chave , não use aspas simples para delimitar o identificador, mas com backticks .

Como nota lateral, a consulta é vulnerável com SQL Injection se o valor(s ) das variáveis ​​veio de fora. Por favor, dê uma olhada no artigo abaixo para saber como evitar isso. Usando PreparedStatements você pode se livrar de usar aspas simples em torno de valores.