jhonny
21-11-2007, 19:36:26
Este truco nacio del siguiente hilo http://www.clubdelphi.com/foros/showthread.php?p=247518#post247518 :).
Trate de hacer algo asi para cambiar el Subtipo de un Blob en FireBird...
alter table nombre_tabla alter column nombre_campo type blob sub_type 1
Pero me mostro el siguiente error:
This operation is not defined for system tables.
unsuccessful metadata update.
Cannot change datatype for column nombre_campo. Changing datatype is not supported for BLOB or ARRAY columns.
Asi que tratando de varias formas me encontre con la siguiente:
update RDB$FIELDS set RDB$FIELD_SUB_TYPE = :suptipo
where RDB$FIELD_NAME = (select RDB$FIELD_SOURCE from RDB$RELATION_FIELDS
where RDB$FIELD_NAME=UPPER('Nombre_del_campo') and
RDB$RELATION_NAME=UPPER('Nombre_de_la_tabla'))
Los codigos de los subtipos son numericos y son los siguientes:
0-> BINARY
1-> TEXT
2-> BLR
3-> ACL
4-> RANGES
5-> SUMMARY
6-> FORMAT
7-> TRANSACTION_DESCRIPTION
8-> EXTERNAL_FILE_DESCRIPTION
9-> DEBUG_INFORMATION
Espero que te sirva de algo, amigo lector :).
Trate de hacer algo asi para cambiar el Subtipo de un Blob en FireBird...
alter table nombre_tabla alter column nombre_campo type blob sub_type 1
Pero me mostro el siguiente error:
This operation is not defined for system tables.
unsuccessful metadata update.
Cannot change datatype for column nombre_campo. Changing datatype is not supported for BLOB or ARRAY columns.
Asi que tratando de varias formas me encontre con la siguiente:
update RDB$FIELDS set RDB$FIELD_SUB_TYPE = :suptipo
where RDB$FIELD_NAME = (select RDB$FIELD_SOURCE from RDB$RELATION_FIELDS
where RDB$FIELD_NAME=UPPER('Nombre_del_campo') and
RDB$RELATION_NAME=UPPER('Nombre_de_la_tabla'))
Los codigos de los subtipos son numericos y son los siguientes:
0-> BINARY
1-> TEXT
2-> BLR
3-> ACL
4-> RANGES
5-> SUMMARY
6-> FORMAT
7-> TRANSACTION_DESCRIPTION
8-> EXTERNAL_FILE_DESCRIPTION
9-> DEBUG_INFORMATION
Espero que te sirva de algo, amigo lector :).