2009-06-13 10 views
6

Konwertuję MSSQL DB do MySQL DB i mam procedura składowana, która używa funkcji rzutowania do konwertowania danych typu datetime na datarcha typu varchar. Niezależnie od tego, czy ma to znaczenie w php/mysql, ponieważ php nie jest silnie wpisane (i nie wiem czy to ma znaczenie, czy nie) Naprawdę chcę zachować SP blisko orginalnego, jak to tylko możliwe, więc mogę zachować tę samą oczekiwaną funkcjonalność . Problem polega na tym, że nie mogę uruchomić funkcji rzutowania w mysql. Oto test, który próbowałem, który dał mi błąd:Jak poprawnie używać funkcji CAST w instrukcji SELECT MySql?

DELIMITER ;// 

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

Co robię źle?

Odpowiedz

13

VARCHAR nie jest prawidłowym typem dla funkcji CAST, but CHAR is.

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

dziękuję, to działało! – DJTripleThreat

Powiązane problemy