Estoy estableciendo una variable, y luego quiero usar el comando USE
para cambiar la base de datos. Desafortunadamente USE
no evalúa la variable.base de datos de cambios MySQL con valor de variable
SET @con="testDB";
Query OK, 0 rows affected (0.00 sec)
select @con;
+--------+
| @con |
+--------+
| testDB |
+--------+
1 row in set (0.00 sec)
use @con;
ERROR 1049 (42000): Unknown database '@con'
Así que el valor de la variable no se evalúa cuando intento conectar. ¿Algunas ideas?
Creo que quieres ": =" en lugar de "=" cuando se utiliza SET – keyser
Es lo mismo si uso: = o =, lo que significa USO todavía trata de evaluar la cadena @con – bioShark
Sip. Acabo de encontrar esto: "También puede asignar un valor a una variable de usuario en sentencias distintas de SET. En este caso, el operador de asignación debe ser: = y no = porque este último se trata como el operador de comparación = en sentencias no establecidas : ". Lo siento, no puedo evitarlo. – keyser