Hola,
en teoría debería ser algo así:
Código:
alter table "<tabla>"
alter "<columna_varchar>" type <blob> [subtype <subtipo>]
en la práctica no está soportado el cambio de tipo para los tipos de datos (como destino) BLOB y ARRAY; al menos hasta la versión 6.0.x de InterBase y 1.0.x de Firebird.
Puedes intentar "tocar" las tablas del sistema donde se almacena la información de tipo de las columnas. Concretamente la tabla RDB$FIELDS, columnas RDB$FIELD_TYPE, RDB$FIELD_SUB_TYPE. De todas formas, tampoco estoy seguro que puedas llegar a buen puerto.
Otra alternativa:
1. Crear la columna BLOB.
2. Mediante un UPDATE pasar el contenido de la columna VARCHAR a la columna BLOB recién creada.
3. Eliminar la columna VARCHAR.
Saludos.