2009-06-13 12 views
6

Sto convertendo un DB MSSQL in DB MySQL e ho una stored procedure che utilizza una funzione di cast per convertire da un datatype datetime a un datatype varchar. Indipendentemente dal fatto che ciò sia importante in php/mysql dato che php non è fortemente digitato (e non so se sarebbe importante o meno), voglio davvero mantenere il SP il più vicino possibile, così posso mantenere la stessa funzionalità prevista . Il problema è che non riesco a far funzionare la funzione cast direttamente in mysql. Ecco un test che ho provato mi ha fatto un errore:Come utilizzare correttamente la funzione CAST in un'istruzione 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;// 

Cosa sto facendo male?

risposta

13

VARCHAR non è un tipo valido per la funzione CAST, but CHAR is.

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

grazie, ha funzionato! – DJTripleThreat

Problemi correlati