Dependerá de lo eficiente que quieras que sea el sistema.
En primer lugar, la "metida de pata" es grave desde el punto de vista de las bases de datos, porque cada función de conversión que se deba usar son ciclos de microprocesador que se consumen. Cuando tienes algunas centenas de registros, no hay problema. Cuando son decenas de miles.... o millones....
En fin, es el tipo de errores que le cuestan el trabajo a algunos.
Volviendo al punto:
Lo mejor, lo óptimo, lo más conveniente, es (tomando el ejemplo de Huesos52):
1) Crear una columna de tipo decimal en la tabla.
2) Realizar un UPDATE masivo pasando los valores de la columna de precio a la nueva columna, realizando el CAST indicado por huesos52:
3) Eliminar la columna vieja:
4) Cambiar el nombre de la nueva columna por el de la vieja columna (así no hay problemas con las aplicaciones):