Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

MySQLi preparou instruções e REPLACE INTO


Por que você está tentando fazer sua preparação na função de abertura da sessão? Eu não acredito que a função de escrita seja chamada mais de uma vez durante uma sessão, então prepará-la abertamente não faz muito para você, você também pode fazer isso na sua sessão de gravação.

De qualquer forma, acredito que você precise de algum espaço em branco após o nome da tabela e antes da lista de colunas. Sem o espaço em branco, acredito que o mysql agiria como se você estivesse tentando chamar a função inexistente chamada session ().
REPLACE INTO session (phpsessid, data) VALUES(?, ?)

Interessante, quando executo o abaixo na CLI do mysql, pareço obter um resultado diferente.
mysql> select count (*);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '*)' at line 1
mysql> select count(*);
+----------+
| count(*) |
+----------+
|        1 | 
+----------+
1 row in set (0.00 sec)