Mudar vários campos de uma vez no firebird 2.5
Boa noite,
Tenho uma tabela com os seguintes campos
FRETE DECIMAL(12,2),
VALOR_COMPRA1 DECIMAL(12,3),
CUSTO_TOTAL1 DECIMAL(12,3),
PRECO_TABELA1 DECIMAL(12,3),
PRECO_MINIMO1 DECIMAL(12,3),
PRECO_MAXIMO1 DECIMAL(12,3),
CUSTO_TOTAL2 DECIMAL(12,3),
PRECO_TABELA2 DECIMAL(12,3),
PESO1 DECIMAL(12,3),
PESO2 DECIMAL(12,3),
PRECO_MINIMO2 DECIMAL(12,3),
PRECO_MAXIMO2 DECIMAL(12,3),
QTDE_EMBALAGEM DECIMAL(12,3),
QTDE_MAXIMA DECIMAL(12,3),
QTDE_MINIMA DECIMAL(12,3),
Gostaria de saber se existe algum comando que mude o tamanho do decimal via sql um alter table por tipo de campo,
seria algo do tipo alter table tbproduto set decimal (18,6) where decimal (12,3) e o resultado seria
FRETE DECIMAL(18,2),
VALOR_COMPRA1 DECIMAL(18,6),
CUSTO_TOTAL1 DECIMAL(18,6),
PRECO_TABELA1 DECIMAL(18,6),
PRECO_MINIMO1 DECIMAL(18,6),
PRECO_MAXIMO1 DECIMAL(18,6),
CUSTO_TOTAL2 DECIMAL(18,6),
PRECO_TABELA2 DECIMAL(18,6),
PESO1 DECIMAL(18,6),
PESO2 DECIMAL(18,6),
PRECO_MINIMO2 DECIMAL(18,6),
PRECO_MAXIMO2 DECIMAL(18,6),
QTDE_EMBALAGEM DECIMAL(18,6),
QTDE_MAXIMA DECIMAL(18,6),
QTDE_MINIMA DECIMAL(18,6),
Tenho uma tabela com os seguintes campos
FRETE DECIMAL(12,2),
VALOR_COMPRA1 DECIMAL(12,3),
CUSTO_TOTAL1 DECIMAL(12,3),
PRECO_TABELA1 DECIMAL(12,3),
PRECO_MINIMO1 DECIMAL(12,3),
PRECO_MAXIMO1 DECIMAL(12,3),
CUSTO_TOTAL2 DECIMAL(12,3),
PRECO_TABELA2 DECIMAL(12,3),
PESO1 DECIMAL(12,3),
PESO2 DECIMAL(12,3),
PRECO_MINIMO2 DECIMAL(12,3),
PRECO_MAXIMO2 DECIMAL(12,3),
QTDE_EMBALAGEM DECIMAL(12,3),
QTDE_MAXIMA DECIMAL(12,3),
QTDE_MINIMA DECIMAL(12,3),
Gostaria de saber se existe algum comando que mude o tamanho do decimal via sql um alter table por tipo de campo,
seria algo do tipo alter table tbproduto set decimal (18,6) where decimal (12,3) e o resultado seria
FRETE DECIMAL(18,2),
VALOR_COMPRA1 DECIMAL(18,6),
CUSTO_TOTAL1 DECIMAL(18,6),
PRECO_TABELA1 DECIMAL(18,6),
PRECO_MINIMO1 DECIMAL(18,6),
PRECO_MAXIMO1 DECIMAL(18,6),
CUSTO_TOTAL2 DECIMAL(18,6),
PRECO_TABELA2 DECIMAL(18,6),
PESO1 DECIMAL(18,6),
PESO2 DECIMAL(18,6),
PRECO_MINIMO2 DECIMAL(18,6),
PRECO_MAXIMO2 DECIMAL(18,6),
QTDE_EMBALAGEM DECIMAL(18,6),
QTDE_MAXIMA DECIMAL(18,6),
QTDE_MINIMA DECIMAL(18,6),
Ederson Rodrigues
Curtidas 0
Respostas
Eduardo Silva.
05/10/2016
Essa dica é preciosa:
-- Alterar Tamanho de Campo Genericamente
UPDATE RDB$FIELDS
SET RDB$FIELD_TYPE = 16,
RDB$FIELD_SCALE = -6,
RDB$FIELD_PRECISION = 18
WHERE rdb$field_name IN (SELECT
f.rdb$field_source
FROM rdb$relation_fields f
WHERE f.RDB$RELATION_NAME IN (SELECT
f.RDB$RELATION_NAME
FROM rdb$relation_fields f
WHERE f.RDB$RELATION_NAME = ''SUA_TABELA''))
sds
Eduardo Belo
e-mail: beloelogica@gmail.com
-- Alterar Tamanho de Campo Genericamente
UPDATE RDB$FIELDS
SET RDB$FIELD_TYPE = 16,
RDB$FIELD_SCALE = -6,
RDB$FIELD_PRECISION = 18
WHERE rdb$field_name IN (SELECT
f.rdb$field_source
FROM rdb$relation_fields f
WHERE f.RDB$RELATION_NAME IN (SELECT
f.RDB$RELATION_NAME
FROM rdb$relation_fields f
WHERE f.RDB$RELATION_NAME = ''SUA_TABELA''))
sds
Eduardo Belo
e-mail: beloelogica@gmail.com
GOSTEI 0