我在mysql中遇到临时表的问题。我创建了这个临时表:
CREATE TEMPORARY TABLE IF NOT EXISTS tmp_general_detalle_entrada_salida (
numero_registro INT(10),
numero_admision INT(10),
id_referencia INT(10),
facturable CHAR(1),
fecha_acceso DATE,
cod_via INT(10),
anexo2 VARCHAR(40),
anexo3 VARCHAR(40),
cod_bodega CHAR(3),
id_centro_costo INT(10),
cod_medico INT(10),
cantidad FLOAT(15,2),
precio_venta_bruto FLOAT(15,2),
descuento FLOAT(15,2),
precio_venta_neto FLOAT(15,2),
copago FLOAT(15,2),
consumido CHAR(1)
)ENGINE = INNODB;
当我在临时表上执行简单的select count(*) from tmp_general_detalle_entrada_salida
时,查询返回随机值(5,4,5,5,0,'表不存在'等)。我正在使用mysql 5.0.51b和PHP 5.2.6。
答案 0 :(得分:2)
数字的变化使得数据在你的选择之间变异。该表不存在表示您的连接在选择之间关闭。当你的连接关闭时,临时表就会消失。
您可以尝试运行
set global general_log='ON';
set global general_log_file='/tmp/mysql.log'
这将记录连接中的每个查询,以选择/tmp/mysql.log。这将使您更深入地了解服务器所看到的内容。