2009-06-13 18 views
6

Estoy convirtiendo una base de datos MSSQL a MySQL DB y tengo un procedimiento almacenado que está utilizando una función de conversión para convertir de un tipo de datos datetime a un tipo de datos varchar. Si esto importa o no en php/mysql ya que php no está fuertemente tipado (y no sé si importaría o no), realmente quiero mantener el SP lo más cercano posible al original para que pueda mantener la misma funcionalidad esperada. . El problema es que no puedo hacer funcionar la función de conversión directamente en mysql. He aquí una prueba que probé que me dio un error:¿Cómo usar la función CAST correctamente en una instrucción MySql SELECT?

DELIMITER ;// 

DROP PROCEDURE IF EXISTS `test`;// 
CREATE PROCEDURE `test`() 
BEGIN 
    SELECT CAST(my_table.DateColumn AS VARCHAR(10)) as TextColumn 
    FROM my_table; 
END;// 

¿Qué estoy haciendo mal?

Respuesta

13

VARCHAR no es un tipo válido para la función CAST, but CHAR is.

SELECT CAST(my_table.DateColumn AS CHAR(10)) as TextColumn FROM my_table; 
+0

gracias, eso funcionó! – DJTripleThreat

Cuestiones relacionadas