Reputation: 33
Hey guys I have a problem with MySQL, i'm trying to insert data in a table but it's returning this error message
Fatal error: SQL: SELECT e.idtarea AS 'idTarea', e.detalle AS 'detalle', e.precio AS 'precio', e.idOrdenReparacion AS 'idOrdenReparacion',
e.fecha
AS 'fecha', concat( 'Editar ', 'Eliminar' ) AS Opciones FROM Tarea e WHERE e.idtarea like '%%' ORDER BY e.idtarea;, Error: Unknown column 'e.fecha' in 'field list' in /opt/lampp/htdocs/scep/tareas.php on line 75
Here is my code:
$SQL="
SELECT
e.idtarea AS 'idTarea',
e.detalle AS 'detalle',
e.precio AS 'precio',
e.idOrdenReparacion AS 'idOrdenReparacion',
e.fecha AS 'fecha',
concat('<a href=\'editarTarea.php?id=',e.idtarea,'\'>Editar</a> ','<a href=\'eliminarTarea.php?id=',e.idtarea,'\' onclick=javascript:confirm(\'Eliminar?>\')>Eliminar </a>') AS Opciones
FROM Tarea e ".$FILTRAR_POR."
ORDER BY e.idtarea;";
$RESULT = mysql_query($SQL) or trigger_error("SQL: $SQL, Error: " . mysql_error(), E_USER_ERROR);
Table Tarea from database:
CREATE TABLE IF NOT EXISTS `Tarea` (
`idTarea` int(11) NOT NULL AUTO_INCREMENT,
`detalle` varchar(45) COLLATE latin1_danish_ci DEFAULT NULL,
`precio` varchar(45) COLLATE latin1_danish_ci DEFAULT NULL,
`idOrdenReparacion` int(11) NOT NULL DEFAULT '0',
`fecha` date DEFAULT NULL,
PRIMARY KEY (`idTarea`,`idOrdenReparacion`),
KEY `fk_Tarea_OrdenReparacion1_idx` (`idOrdenReparacion`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_danish_ci AUTO_INCREMENT=2 ;
.....
ALTER TABLE `Tarea`
ADD CONSTRAINT `fk_Tarea_OrdenReparacion1` FOREIGN KEY (`idOrdenReparacion`)
REFERENCES `OrdenReparacion` (`idOrdenReparacion`) ON DELETE NO ACTION ON UPDATE NO ACTION;
Upvotes: 0
Views: 3387
Reputation: 11393
Fieldnames and aliases must be enclosed in backticks, not in single quotes as you did. Updated query:
$SQL="SELECT
e.idtarea AS `idTarea`,
e.detalle AS `detalle`,
e.precio AS `precio`,
e.idor AS `idOrdenReparacion`,
e.fecha AS `fecha`,
concat('<a href=\'editarTarea.php?id=',e.idtarea,'\'>Editar</a> ','<a href=\'eliminarTarea.php?id=',e.idtarea,'\' onclick=javascript:confirm(\'Eliminar?>\')>Eliminar </a>') AS Opciones
FROM Tarea e ".$FILTRAR_POR."
ORDER BY e.idtarea;";
Upvotes: 0
Reputation: 1190
Have you verified that a previous version of the table didn't exist where the column didn't exist? If there was already a version of the table, then your SQL will not made changes to the columns in the table.
Upvotes: 1