sql >> Base de Datos >  >> RDS >> Mysql

MySQLi preparó declaraciones y REPLACE INTO

¿Por qué está tratando de hacer su preparación en la función de apertura de sesión? No creo que la función de escritura se llame más de una vez durante una sesión, por lo que prepararla al aire libre no hace mucho por ti, también podrías hacerlo en tu sesión de escritura.

De todos modos, creo que necesita algunos espacios en blanco después del nombre de la tabla y antes de la lista de columnas. Sin el espacio en blanco, creo que mysql actuaría como si estuviera tratando de llamar a la función inexistente llamada session().

REPLACE INTO session (phpsessid, data) VALUES(?, ?)

Interesante, cuando ejecuto lo siguiente en la CLI de mysql, parece que obtengo un 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)