Page 1 of 1

UPDATE IN STORED PROCEDURE

Posted: Tue 01 Aug 2006 01:18
by Alberto Fregoso
Hello !!!

Which is the correct form to do an update in a Stored Procedure.?

This way I am doing it!!!

CREATE DEFINER=`root`@`localhost` PROCEDURE `ModificaModelos`(pEmpresa Integer(11), pCodigo Char(20),
pDescripcion Char(50), pDescripcion2 Char(50),
pUbicacion Char(10), pCorrida Char(10),
pColor Char(10), pLinea Char(10), pProveedor Char(10),
pPrecio1 Double(12,2), pPrecio2 DOUBLE(12,2),
pPrecio3 Double(12,2), pPrecio4 Double(12,2),
pPrecio5 Double(12,2), pPrecio6 DOUBLE(12,2),
pPrecio7 Double(12,2), pPrecio8 Double(12,2),
pPrecio9 Double(12,2), pPrecio10 Double(12,2))
BEGIN
UPDATE Productos SET Empresa = pEmpresa, Codigo = pCodigo, Descripcion = pDescripcion, Descripcion2 = pDescripcion2,
Ubicacion = pUbicacion, Corrida = pCorrida, Color = pColor, Linea = pLinea,
ClaveProveedor = pProveedor, Precio1 = pPrecio1, Precio2 = pPrecio2, Precio3 = pPrecio3,
Precio4 = pPrecio4, Precio5 = pPrecio5, Precio6 = pPrecio6, Precio7 = pPrecio7,
Precio8 = pPrecio8, Precio9 = pPrecio9, Precio10 = pPrecio10
Where Empresa = pEmpresa and
Codigo = pCodigo; <---- Aqui el parametro pCodigo es de tipo CHAR()
Since I him(her) put inverted commas from code in Delphi.?

Return This Error.. :
#HY000Illegal mix of collaction (latin_spanish_ci,IMPLICIT) and (latin1_swedish_ci,IMPLICIT) for operation '='

THANKS !!!

Var. MyDAC 4.30.1.15
Delphi 7
WinXP SP2
END

Posted: Tue 01 Aug 2006 09:20
by Jackson
This is MySQL error.
Most possible, encoding is not configured properly.
Check TMyConnection.Options.Charset property and configure your server.

THIS IS SOLUTION !!!!!!

Posted: Tue 01 Aug 2006 22:45
by Alberto Fregoso
In the Clause Where Adding This Code COLLATE latin1_spanish_ci;

This is Complete Code.

DELIMITER $$;

DROP PROCEDURE IF EXISTS `syscoi7`.`ModificaModelos`$$

CREATE DEFINER=`root`@`localhost` PROCEDURE `ModificaModelos`(pEmpresa Integer(11), pCodigo Char(20),
pDescripcion Char(50), pDescripcion2 Char(50),
pUbicacion Char(10), pCorrida Char(10),
pColor Char(10), pLinea Char(10), pProveedor Char(10),
pPrecio1 Double(12,2), pPrecio2 DOUBLE(12,2),
pPrecio3 Double(12,2), pPrecio4 Double(12,2),
pPrecio5 Double(12,2), pPrecio6 DOUBLE(12,2),
pPrecio7 Double(12,2), pPrecio8 Double(12,2),
pPrecio9 Double(12,2), pPrecio10 Double(12,2))
BEGIN
UPDATE Productos SET Empresa = pEmpresa, Codigo = pCodigo, Descripcion = pDescripcion, Descripcion2 = pDescripcion2,
Ubicacion = pUbicacion, Corrida = pCorrida, Color = pColor, Linea = pLinea,
ClaveProveedor = pProveedor, Precio1 = pPrecio1, Precio2 = pPrecio2, Precio3 = pPrecio3,
Precio4 = pPrecio4, Precio5 = pPrecio5, Precio6 = pPrecio6, Precio7 = pPrecio7,
Precio8 = pPrecio8, Precio9 = pPrecio9, Precio10 = pPrecio10
Where Empresa = pEmpresa and
Codigo = pCodigo COLLATE latin1_spanish_ci;
END$$

DELIMITER ;$$
8)

Posted: Wed 02 Aug 2006 11:09
by Jackson
Did you assign any value to TMyConnection.Options.Charset property?
If yes, please specify its value.